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>