LARGE single-system Cyrus installs?
Bron Gondwana
brong at fastmail.fm
Tue Nov 20 00:04:23 EST 2007
On Tue, 20 Nov 2007 15:40:58 +1100, "Andrew McNamara" <andrewm at object-craft.com.au> said:
> >> In production releases of ZFS fsync() essentially triggers sync() (fixed in
> >> Solaris Next).
> [...]
> >Skiplist requires two fsync calls per transaction (single
> >untransactioned actions are also one transaction), and it
> >also locks the entire file for the duration of said
> >transaction, so you can't have two writes happening at
> >once. I haven't built Cyrus on our Solaris box, so I don't
> >know if it uses fcntl there, it certainly does on the Linux
> >systems, but it can fall back to flock if fcntl isn't
> >available.
>
> Note that ext3 effectively does the same thing as ZFS on fsync() -
> because
> the journal layer is block based and does no know which block belongs
> to which file, the entire journal must be applied to the filesystem to
> achieve the expected fsync() symantics (at least, with data=ordered,
> it does).
Lucky we run reiserfs then, I guess...
Bron.
--
Bron Gondwana
brong at fastmail.fm
More information about the Info-cyrus
mailing list