zfs/include
Pawel Jakub Dawidek 0cee24064a Speed up 'zfs list -t snapshot -o name -s name'
FreeBSD #xxx:  Dramatically optimize listing snapshots when user
requests only snapshot names and wants to sort them by name, ie.
when executes:

  # zfs list -t snapshot -o name -s name

Because only name is needed we don't have to read all snapshot
properties.

Below you can find how long does it take to list 34509 snapshots
from a single disk pool before and after this change with cold and
warm cache:

    before:

        # time zfs list -t snapshot -o name -s name > /dev/null
        cold cache: 525s
        warm cache: 218s

    after:

        # time zfs list -t snapshot -o name -s name > /dev/null
        cold cache: 1.7s
        warm cache: 1.1s

NOTE: This patch only appears in FreeBSD.  If/when Illumos picks up
the change we may want to drop this patch and adopt their version.
However, for now this addresses a real issue.

Ported-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #450
2012-06-14 09:49:04 -07:00
..
linux Linux 3.4 compat, d_make_root() replaces d_alloc_root() 2012-06-11 10:04:49 -07:00
sys Speed up 'zfs list -t snapshot -o name -s name' 2012-06-14 09:49:04 -07:00
Makefile.am Add the release component to headers 2012-01-18 12:19:47 -08:00
Makefile.in Linux 3.4 compat, d_make_root() replaces d_alloc_root() 2012-06-11 10:04:49 -07:00
libnvpair.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
libuutil.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
libuutil_common.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
libuutil_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
libzfs.h Speed up 'zfs list -t snapshot -o name -s name' 2012-06-14 09:49:04 -07:00
libzfs_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_comutil.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_deleg.h Illumos #278: get rid zfs of python and pyzfs dependencies 2011-08-01 12:09:36 -07:00
zfs_fletcher.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_namecheck.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_prop.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zpios-ctl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zpios-internal.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00