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"

Reply via email to