Re: writing file to disk: not as easy as it looks

From: Pavel Machek
Date: Wed Dec 03 2008 - 13:24:41 EST


On Wed 2008-12-03 18:43:18, Mikulas Patocka wrote:
> > On Wed, Dec 03, 2008 at 09:46:40AM +0100, Pavel Machek wrote:
> > > Yes. fsync() seeems surprisingly high on Rusty's list of broken
> > > interfaces classification ('impossible to use correctly').
>
> BTW where is that list.

http://ozlabs.org/~rusty/index.cgi/tech/2008-04-01.html

> > To be fair, fsync() was primarily intended for making sure that the
> > data had been written to disk, and not necessarily as a way of making
> > sure that write errors would be properly reflected back to the
> > application. As you've pointed out, it's not really adequate for that
> > purpose.
>
> Well, what else do you want to use for databases? (where crashing the
> whole computer makes less damage than pretending that transaction was
> committed while it wasn't).

I guess we could modify fsync() to fail if there was _ever_ write
problem on same filesystem. That would make it "safe". And as
ext2/ext3 can't handle metadata write errors anyway... maybe that
should be done?
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/