Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Aug 2011 11:55:43 +0100
From:      "seanrees@gmail.com" <seanrees@gmail.com>
To:        Daniel Kalchev <daniel@digsys.bg>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: ZFS directory with a large number of files
Message-ID:  <CAJGy1F11p9rdvR5ESDf6AVqiCJmuu99YutqngmnYZW%2B3eHLWYg@mail.gmail.com>
In-Reply-To: <4E37CD13.1070402@digsys.bg>
References:  <CAJGy1F0d7jeyaFuNdXe%2BucTL2r7R4suCyu8xG7WRHenMFZH-6g@mail.gmail.com> <20110802090830.GA92646@icarus.home.lan> <CAJGy1F0V65YB7L_1T-26O_gUkUUzn6mef036iuAw6HRGjxFRQA@mail.gmail.com> <20110802094226.GA93114@icarus.home.lan> <42039B84-D6CE-4780-AA70-8500B1B32036@gsoft.com.au> <4E37CD13.1070402@digsys.bg>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 2, 2011 at 11:10 AM, Daniel Kalchev <daniel@digsys.bg> wrote:
>> If it is a limitation in ZFS it would be nice to know that, perhaps it
>> truly, really is a bug that can be avoided (or it's inherent in the way =
ZFS
>> handles such things)
>
> It is possible =A0that there is not enough memory in ARC to cache that la=
rge
> directory.
>
> Other than that, perhaps in ZFS it would be easier to prune the unused
> directory entries, than it is in UFS. It looks like this is not implement=
ed.
>
> Another reason might be some FreeBSD specific implementation issue for
> fstatfs.
>
> In any case, the data available is not sufficient. More information would
> help, like how much RAM this system has, how much ARC uses, some ARC stat=
s.

Which sysctl's would you like?

I grabbed these to start:
kstat.zfs.misc.arcstats.size: 118859656
kstat.zfs.misc.arcstats.hdr_size: 3764416
kstat.zfs.misc.arcstats.data_size: 53514240
kstat.zfs.misc.arcstats.other_size: 61581000

kstat.zfs.misc.arcstats.hits: 46762467
kstat.zfs.misc.arcstats.misses: 16999907

The machine has 2GB of memory.

> What made me wonder is .. how exactly the kernel and zpool disagree on zp=
ool
> version? What is the pool version in fact?

% dmesg | grep ZFS
ZFS NOTICE: Prefetch is disabled by default if less than 4GB of RAM is pres=
ent;
            to enable, add "vfs.zfs.prefetch_disable=3D0" to /boot/loader.c=
onf.
ZFS filesystem version 5
ZFS storage pool version 28

% zpool get version tank
NAME  PROPERTY  VALUE    SOURCE
tank  version   15       local

% zpool upgrade tank
This system is currently running ZFS pool version 15.

Pool 'tank' is already formatted using the current version.


Sean



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJGy1F11p9rdvR5ESDf6AVqiCJmuu99YutqngmnYZW%2B3eHLWYg>