Uploaded image for project: 'Facter'
  1. Facter
  2. FACT-1887

Facter takes very long to run on systems with huge amounts of ZFS filesystems

    Details

    • Type: Improvement
    • Status: Needs Information
    • Priority: Normal
    • Resolution: Unresolved
    • Affects Version/s: FACT 3.11.1
    • Fix Version/s: None
    • Component/s: None
    • Environment:

      FreeBSD 11.2

    • Template:
    • Team:
      Platform OS
    • QA Risk Assessment:
      Needs Assessment

      Description

      The code in Facter that retrieves the ZFS filesystem version is using the command "zfs upgrade" which prints the (hardcoded into the "zfs" binary) version number - and then checks all the filesystems in the computer. Something that sometimes takes a loooooooong time on big servers with a lot of filesystems (hours on one with >88000 ZFS filesystems...)

      On FreeBSD a much better way to get the ZFS version is using the "sysctl" command:

        sysctl vs.zfs.version.zpl

      (Which also returns the ZFS version in use in the kernel and nu just the precompiled version number in the zfs binary)

      It would be nice if there was some way to disable the Facter code that tries to list all the filesystems on these machines (we binary-patched away the "/sbin/zfs list" call (since that many filesystems broke the PuppetDB - the facts got too big) in the Facter binary, but the ZFS version check seems to be somewhere else...

       

        Attachments

          Activity

            jsd-sla-details-panel

              People

              • Assignee:
                branan Branan Riley
                Reporter:
                ptrrkssn Peter Eriksson
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Zendesk Support