On Tue, May 12, 2020 at 2:04 PM Michael Paquier <michael@paquier.xyz> wrote:
On Tue, May 12, 2020 at 12:55:37PM +0900, Fujii Masao wrote: > On 2020/05/12 9:42, Paul Guo wrote: >> 1. StartupXLOG() does fsync on the whole data directory early in >> the crash recovery. I'm wondering if we could skip some >> directories (at least the pg_log/, table directories) since wal, >> etc could ensure consistency. > > I agree that we can skip log directory but I'm not sure if skipping > table directory is really safe. Also ISTM that we can skip the directories > that those contents are removed or zeroed during recovery, > for example, pg_snapshots, pg_substrans, etc.
Basically excludeDirContents[] as of basebackup.c.
table directories & wal fsync probably dominates the fsync time. Do we
know any possible real scenario that requires table directory fsync?