Re: fdatasync performance problem with large number of DB files

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Fujii Masao <masao.fujii@oss.nttdata.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Michael Brown <michael.brown@discourse.org>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2021-03-17T03:02:58Z
Lists: pgsql-hackers
On Tue, Mar 16, 2021 at 9:10 PM Fujii Masao <masao.fujii@oss.nttdata.com> wrote:
> Thanks for the patch!
>
> +        When set to <literal>fsync</literal>, which is the default,
> +        <productname>PostgreSQL</productname> will recursively open and fsync
> +        all files in the data directory before crash recovery begins.
>
> Isn't this a bit misleading? This may cause users to misunderstand that
> such fsync can happen only in the case of crash recovery.

If I insert the following extra sentence after that one, is it better?
 "This applies whenever starting a database cluster that did not shut
down cleanly, including copies created with pg_basebackup."



Commits

  1. Change recovery_init_sync_method to PGC_SIGHUP.

  2. Provide recovery_init_sync_method=syncfs.