On Oct 26, 2010, at 11:33 AM, Marc G. Fournier wrote: > Someone recently posted on one of the PostgreSQL Blogs concerning fsync on > Linux/Windows/Mac OS X, but failed to make any comments on any of the BSDs > ... the post has to do with how fsync works on the various OSs, and am > curious as to whether or not this is something that also afflicts us: > > http://rhaas.blogspot.com/2010/10/wal-reliability.html > >> From reading our man page, I see no warnings similar to what the other OSs > have, specifically: > > Mac OS X: For applications that require tighter guarantees about the > integrity of their data, Mac OS X provides the F_FULLFSYNC fcntl > > Linux: If the underlying hard disk has write caching enabled, then the > data may not really be on permanent storage when fsync() / > fdatasync() return. > > So, do we hide the fact, or are, in fact, not afflicted by this? > > It has -always- been the case with the Berkeley FFS that, by default, not all operations are sychronous, and that sync()/fsync() just 'schedule' the flush operation, w/o waiting for it to complete. This is precisely why the "tradiitional" emergency shutdown was: "sync <newline> sync <newline> halt {or haltsys"} <newline>"
There is a mount option that forces all I/O on the device to be synchronous, but the performance penalty is _massive_. _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"