Re: Use durable_unlink for .ready and .done files for WAL segment removal
Nathan Bossart <bossartn@amazon.com>
From: "Bossart, Nathan" <bossartn@amazon.com>
To: Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>,
Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>,
"pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2018-11-27T20:50:05Z
Lists: pgsql-hackers
On 11/27/18, 2:46 PM, "Andres Freund" <andres@anarazel.de> wrote: > On 2018-11-27 20:43:06 +0000, Bossart, Nathan wrote: >> I don't have exact figures to share, but yes, a huge number of calls >> to sync_file_range() and fsync() can use up a lot of time. Presumably >> Postgres processes files individually instead of using sync() because >> sync() may return before writing is done. Also, sync() would affect >> non-Postgres files. However, it looks like Linux actually does wait >> for writing to complete before returning from sync() [0]. > > sync() has absolutely no way to report errors. So, we're never going to > be able to use it. Besides, even postgres' temp files would be a good > reason to not use it. Ah, I see. Thanks for clarifying. Nathan
Commits
-
Ensure cleanup of orphan archive status files
- 6d8727f95e70 12.0 landed