On Fri, Nov 15, 2013 at 5:36 PM, Mark Felder <f...@freebsd.org> wrote:
> On Fri, Nov 15, 2013, at 3:23, Stefan Esser wrote:
>> Am 14.11.2013 22:02, schrieb Teske, Devin:
>> > On Nov 14, 2013, at 12:49 PM, Mark Felder wrote:
>> >> We don't even do installs on UFS with atime disabled by default in fstab
>> >> so why should we so suddenly change course for ZFS?
>> > You've made a good point.
>> There is major difference between UFS and ZFS: UFS allows in-place
>> updates of i-node fields (like atime), while ZFS uses COW for all
>> data, file contents and meta-data like the i-nodes.
>> With atime ON on UFS you'll see a small number of writes on
>> file-systems that are only read - we are used to accept that.
>> On ZFS every update of atime causes a write of the meta-data to
>> a free location on disk, then updates of all data structures
>> that reference that meta-data up to the root of the tree (the
>> uberblock). An update of a few bytes turns out to write tens
>> of KB for each atime update (within the TXG sync interval, which
>> defaults to 5 seconds on FreeBSD). If you create snapshots, then
>> each snapshot will contain a copy of the metadata that was valid
>> at the time of the snapshot (well, that's not so different from
>> the situation with UFS snapshots, just that the data structures
>> are much more complex and larger in the ZFS case). Due to the
>> ease and speed of snapshot creation with ZFS there probably are
>> a magnitude or more snapshots on a typical ZFS system than on
>> one using UFS (I currently have a few hundred and have turned off
>> periodic snapshot generation on many unimportant file-systems,
>> I really hope that we get relatime (with minor variations that
>> were discussed a few months ago) and that we make it the default
>> in some future release ...
> Thanks for this in-depth explanation. I wasn't aware that atime was
> quite so expensive on ZFS.
What I did on my system when I was still using ZFS was that I set
atime off by default but enabled it explicitly on /var/mail and /home
datasets. The thought was that it's needed for mailboxes in /var/mail
and if I then decide to move the inboxes to user's home directories I
won't get any surprises. Would that be a suitable compromise here?
firstname.lastname@example.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"