"Steinar H. Gunderson" <sgunderson@xxxxxxxxxxx> writes: > On Tue, Aug 15, 2006 at 05:20:25PM -0500, Jim C. Nasby wrote: >> This is only valid if the pre-allocation is also fsync'd *and* fsync >> ensures that both the metadata and file data are on disk. Anyone >> actually checked that? :) > fsync() does that, yes. fdatasync() (if it exists), OTOH, doesn't sync the > metadata. Well, the POSIX spec says that fsync should do that ;-) My guess is that most/all kernel filesystem layers do indeed try to sync everything that the spec says they should. The Achilles' heel of the whole business is disk drives that lie about write completion. The kernel is just as vulnerable to that as any application ... regards, tom lane