Re: fsync or fdatasync
От | Bruce Momjian |
---|---|
Тема | Re: fsync or fdatasync |
Дата | |
Msg-id | 200209121625.g8CGPcf04332@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: fsync or fdatasync (Mats Lofkvist <mal@algonet.se>) |
Список | pgsql-admin |
Mats Lofkvist wrote: > > Actually, no, we are only O_SYNC'ing the WAL writes and sometimes that > > is faster because you are not writing then fsyncing, you are just > > writing. The fdatasync only is better than O_SYNC when you are doing > > multiple WAL writes before an fdatasync and we normally don't do that. > > > > I may be wrong on this, but my understanding is that the difference > between fsync() and O_SYNC on the one hand and fdatasync() and O_DSYNC > on the other hand is that the latter don't have to sync metadata > (e.g. file access times) which saves a write to the inode that is > more or less guarantied to require an extra seek. > > Iff this is true you never want to use fsync() or O_SYNC when > fdatasync() and O_DSYNC is available (unless you really need the > metadata to be synced too). Yes, I didn't mention O_DSYNC. It is in the cards. If you are interested, look at the code and how the defaults are chosen. postgresql.conf say: #wal_sync_method = fsync # the default varies across platforms: # # fsync, fdatasync, open_sync, or open_datasync Which means exactly that, varies based on the platform. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
В списке pgsql-admin по дате отправления: