[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: ext3 and chattr +S on postfix spools

ext3 is unsafe for maildir, and with softupdates, so is ffs.
One step forwards, two steps back.

Fortunately, some people still have a choice.


> On Mon, Feb 04, 2002 at 10:34:02PM +0000, Stephen C. Tweedie wrote:
> > On Mon, Feb 04, 2002 at 05:34:52PM +0800, Yusuf Goolamabbas wrote:
> > > Postfix <http://www.postfix.org> does a chattr +S on its spool directory
> > > when it is installed on Linux.
> > > 
> > > Is this still required on ext3 ?
> > 
> > I'm not sure --- it depends on what Postfix's assumptions are.  If it
> > expects all directory operations to be synchronous then the flag is
> > still needed.  If it is satisfied with fsync flushing dir information,
> > then no it is not needed.
> I don't say that I know postfix better. Beside for calling fsync()
> to ensure that message safely stored on the disk, postfix also
> use rename(2) to move message accross queue dirs. It's okay because
> postfix's queue-id use inode as it's name.
> If I understand correctly, link(2) and unlink(2) implementation
> on ext3fs will be done asynchronously. This is use by postfix
> (unlink()) to remove messages that already delivered (by calling
> remove()).
> So, in case of power outage for example, no message will get lost,
> but possibly be delivered twice. Note that postfix also mark all
> of recipients which are already delivered as done (but without calling
> fsync()).
> Then *I think* it's save to get rid chattr +S on ext3fs.
> On other issue, postfix also support local delivery using maildir
> format (http://cr.yp.to/proto/maildir.html) which is use link(2)
> and unlink(2). If there is power outage, it is possible that
> linking file from tmp to new get failed. This is the same with
> losing message as there is no MUA or other mail retreival agent
> use that files which still stay on tmp directory.
> Regards,
> P.Y. Adi Prasaja
> -
> To unsubscribe, send mail to majordomo postfix org with content
> (not subject): unsubscribe postfix-users

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]