On Thu, 31 Jul 2008, Paul Fisher wrote:
>>
> Syslog is funny in that it does a lot of open/write/close cycles so that
> rotate can work trivially.  Those are meta-data updates and on NFS each
> implies a COMMIT.  This leads us back to the old "solaris nfs over zfs
> is slow" discussion, where we talk about the fact that other nfs servers
> does not honor the COMMIT semantics and can lose data.  I for one do
> *not* want solaris nfs/zfs to behave in any way other than it does.

There is the additional problem that in order for the NFS client to 
update the log file, part of it needs to be read first.  This results 
in a hit from needing to read a chunk of data in whatever blocksize 
ZFS decided to use.  The entire chunk needs to be read from disk 
(could be cached in memory).  Each read requires that the checksum be 
computed and verified.  If the updates are small compared with the 
blocksize, then considerable resources are expended just computing the 
checksum.  When the data is written back, the checksum needs to be 
computed for the new block.  If ZFS does not update (enlarge) the head 
(tail?) block on the file, then it would end up using tiny block sizes 
leading to terrible fragmentation.

Bob
======================================
Bob Friesenhahn
[EMAIL PROTECTED], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to