> Comments below, but why someone has to relay stuff back and forth like
> this I have no idea.
Sorry, I thought of cross-posting to both lists but didn't do it
> > Postfix requires that fsync() updates the directory AND file before
> > it returns.
>
> Postfix seems to be a very demanding program ;-)
You bet :)
> The way to think about the xfs transaction system is that time rolls
> backwards after a crash. A file being renamed will either be in its
> old location or the new one - it will not be MIA. And if you perform
> a sequence of operations on a file one after another, then after a
> crash you will get ALL of the operations upto some point, and none of
> the ones after that point. If you want to know that something is on
> disk and safe from crash then:
>
> o fsync on a file will flush the log upto at least the last transaction
> involving that file - from the above, this means a rename would be
> safe on disk.
>
> o fsync on a dir will work too.
BTW, Wietse like all other MTA authors does not do fsync on a dir, he
assumes that fsync on a file will fsync the containing dir
> > The text below does not confirm that rename()/link() work as
> > required. It would be incorrect to assume that every rename()/link()
> > operation is followed by fsync().
>
> Hmm, and the question I was asked was not this question, but never mind.
> I am pretty sure XFS is doing all the right things here.
My apologies for asking the wrong question
Regards, Yusuf
|