Date: Tue, 6 Feb 2001 10:39:00 -0800 (PST) From: Matt Dillon <dillon@earth.backplane.com> To: Rik van Riel <riel@conectiva.com.br> Cc: Poul-Henning Kamp <phk@critter.freebsd.dk>, Charles Randall <crandall@matchlogic.com>, Dan Phoenix <dphoenix@bravenet.com>, Alfred Perlstein <bright@wintelcom.net>, Jos Backus <josb@cncdsl.com>, freebsd-hackers@FreeBSD.ORG Subject: Re: soft updates and qmail (RE: qmail IO problems) Message-ID: <200102061839.f16Id0P63433@earth.backplane.com> References: <Pine.LNX.4.21.0102061601420.1535-100000@duckman.distro.conectiva>
next in thread | previous in thread | raw e-mail | index | archive | help
:> consistent state. Softupdates is considerably better at guarenteeing :> this consistency (as is something like Reiser), but if you crash a :> softupdates disk may wind up unwinding 'more' of the last few moments :> worth of operations then a normal filesystem would. And, I might add, :> Reiser is the same way. : :Reiserfs and ext3 have write-ahead logs and, AFAIK, fsync() :will not return until there is a commit point in the log. : :This means that fsync() will guarantee that the transactions :won't be unwound (unless I've overlooked some weird special :case situations where it is needed after all...). Yes, I believe you are correct. I was operating under the impression that ReiserFS had only one log, though. I have not researched EXT3 so I can't comment on it. So if you fsync() a file under Reiser, aren't you fsync()ing the entire filesystem? Maybe a ReiserFS expert can comment on that. I could be completely wrong. When you fsync() under softupdates, it only pushes out the information necessary to fsync the one file and portions of the directory structure required to access that file, all the way up to root if necessary. It doesn't touch other unrelated pending data. -Matt :The only filesystems I can see being completely resilient :against these destructive roll-backs would be LFS and tux2. : :regards, : :Rik To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102061839.f16Id0P63433>