Subject: Re: SOFTDEPS safe for qmail?
To: Don Lewis <Don.Lewis@tsc.tdk.com>
From: Robert Elz <kre@munnari.OZ.AU>
List: current-users
Date: 06/16/2000 21:38:43
    Date:        Fri, 16 Jun 2000 00:45:44 -0700
    From:        Don Lewis <Don.Lewis@tsc.tdk.com>
    Message-ID:  <200006160745.AAA14000@salsa.gv.tsc.tdk.com>

  | The only problem I can think of for something like qmail is if it does
  | something like:
  | 	write message to file
  | 	fsync file
  | 	rename file (to indicate that the file is a complete message)
  | 	tell sender that the message has been received

That is almost certainly what it does, it is what sendmail does.

Something like that is needed in any unix mailer - a way to ensure
that the message has been properly queued before telling the sender
that they are no longer responsible for delivery.

  | This depends on rename() being synchronous

Yes.   And that fsync() works.

I don't know if it is feasible with softdep or not, but a (per-process)
option that makes rename() synchronous (truly synchronous) for the
process would allow the mail spool filesys (the one where /var/spool/mqueue
or qmail's equivbalent of that lives, not /var/mail) to remain using
softdeps, and be safe.

kre