Nick (Keith) Fish <[EMAIL PROTECTED]> wrote:
> 
> I'm not sure on the statement that qmail is unreliable under Linux due to
> its assumptiopn that "link is a synchronous operation".  I've never read
> anything about it.  Anyone else?

The problem comes from the fact that Linux does not adhere to BSD semantics
regarding the sync() system call.  BSD semantics state that if you sync a
file, it's data and it's metadata are synced to disc.

Linux, on the other hand, syncs only the data.  To sync the metadata, you have
to sync() the directory the file resides in.  Most software which isn't
specifically written with this in mind won't do this.  qmail relies on the BSD
semantics to guarantee that a message will never be lost after it has been
successfully queued.  Running a stock qmail under Linux gives you a finitely
small chance of losing mail in the event of a power outage or other problem.

One way to fix this is to use the "syncdir" code which Bruce Guenter
distributes.  It transparently makes Linux's sync() act like a standard BSD
sync.  Bruce's qmail+patches SRPM used to include syncdir; I don't know if it
does anymore, but he also distributes it separately at untroubled.org.

Charles
-- 
-----------------------------------------------------------------------
Charles Cazabon                            <[EMAIL PROTECTED]>
GPL'ed software available at:  http://www.qcc.sk.ca/~charlesc/software/
Any opinions expressed are just that -- my opinions.
-----------------------------------------------------------------------

Reply via email to