:> 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 [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message