Re: AW: AW: WAL does not recover gracefully from out-of-dis k-sp ace

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: AW: AW: WAL does not recover gracefully from out-of-dis k-sp ace
Дата
Msg-id 7342.984160119@sss.pgh.pa.us
обсуждение исходный текст
Ответ на AW: AW: WAL does not recover gracefully from out-of-dis k-sp ace  (Zeugswetter Andreas SB <ZeugswetterA@wien.spardat.at>)
Список pgsql-hackers
Zeugswetter Andreas SB  <ZeugswetterA@wien.spardat.at> writes:
> A short test shows, that opening the file O_SYNC, and thus avoiding fsync()
> would cut the effective time needed to sync write the xlog more than in half.
> Of course we would need to buffer >= 1 xlog page before write (or commit)
> to gain the full advantage.

> prewrite 0 + write and fsync:        60.4 sec
> sparse file + write with O_SYNC:        37.5 sec
> no prewrite + write with O_SYNC:        36.8 sec
> prewrite 0 + write with O_SYNC:        24.0 sec

This seems odd.  As near as I can tell, O_SYNC is simply a command to do
fsync implicitly during each write call.  It cannot save any I/O unless
I'm missing something significant.  Where is the performance difference
coming from?

The reason I'm inclined to question this is that what we want is not an
fsync per write but an fsync per transaction, and we can't easily buffer
all of a transaction's XLOG writes...
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Zeugswetter Andreas SB
Дата:
Сообщение: AW: AW: WAL does not recover gracefully from out-of-dis k-sp ace
Следующее
От: Tom Lane
Дата:
Сообщение: Re: PQfinish(const PGconn *conn) question