Date: Tue, 6 Feb 2001 11:56:12 -0800 (PST) From: Matt Dillon <dillon@earth.backplane.com> To: Andre Oppermann <oppermann@monzoon.net> Cc: Mike Silbersack <silby@silby.com>, Rik van Riel <riel@conectiva.com.br>, 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: <200102061956.f16JuCb65538@earth.backplane.com> References: <Pine.BSF.4.31.0102061149180.14899-100000@achilles.silby.com> <200102061759.f16Hxv662437@earth.backplane.com> <3A805137.230E0A0D@monzoon.net>
next in thread | previous in thread | raw e-mail | index | archive | help
: :This information is in fact correct. Have a look at the FreeBSD link(2) :man page: : :LINK(2) FreeBSD System Calls Manual :LINK(2) Andre, I think there *might* be a dozen people in the world that understand UFS/FFS better then I do, but none of them have posted to this thread. Believe me when I say that there is no metadata ordering guarentee in the case of a crash. Yes a standard UFS/FFS will do synchronous metadata updates for certain operations. No, this does not guarentee metadata ordering. There has been talk of providing system calls to allow user programs to request ordering semantics for certain operations, but nobody has actually implemented anything. Most of the discussion has been centered on having calls to guarentee file write ordering between a set of open descriptors for databases. As I said, a journaled filesystem can theoretically make metadata ordering guarentees, but actually doing so creates massive performance and scaleability issues that aren't apparent until you really start pounding the filesystem. It *CAN* be done efficiently, but only if you have a significant amount of non-volatile memory store to hold the journal. ReiserFS might do it right now, as a side effect, but if it does it faces serious scaleability issues. Softupdates can also theoretically order [meta]data, using dependancies. It is a very difficult problem to solve and it doesn't do it now. All softupdates does is guarentee filesystem consistency in the case of a crash and certain guarentees for what will be crash-recoverable when you do an fsync(). -Matt 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?200102061956.f16JuCb65538>