Hi, 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. Greetings, Andres Freund