On Sunday 31 October 2010 20:59:31 Greg Smith wrote:
> Writes only are sync'd out when you do a commit, or the database does a
> checkpoint.
Hm? WAL is written out to disk after an the space provided by wal_buffers(def
8) * XLOG_BLCKSZ (def 8192) is used. The default is 64kb which you reach
pretty quickly - especially after a checkpoint. With O_D?SYNC that will
synchronously get written out during a normal XLogInsert if hits a page
boundary.
*Additionally* its gets written out at a commit if sync commit is not on.
Not having a real O_DSYNC on linux until recently makes it even more dubious
to have it as a default...
Andres