> Actually ... take a close look at the code.  The delay is done in
> xact.c between XLogInsert(commitrecord) and XLogFlush().  As near
> as I can tell, both the write() and the fsync() will happen in
> XLogFlush().  This means the delay is just plain broken: placed
> there, it cannot do anything except waste time.

I see.  :-(

> Another thing I am wondering about is why we're not using fdatasync(),
> where available, instead of fsync().  The whole point of preallocating
> the WAL files is to make fdatasync safe, no?

I don't have fdatasync() here.  How does it compare to fsync().

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Reply via email to