LARGE single-system Cyrus installs?

Bron Gondwana brong at
Tue Nov 20 00:04:23 EST 2007

On Tue, 20 Nov 2007 15:40:58 +1100, "Andrew McNamara" <andrewm at> 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 Gondwana
  brong at

More information about the Info-cyrus mailing list