On Wed, Jul 06, 2022 at 06:21:24PM +0200, talk to ben wrote:
> I am not sure why, but I can't find "basic_archive.archive_directory" in
> pg_settings the same way I would find for example :
> "pg_stat_statements.max".
>
> [local]:5656 benoit@postgres=# SELECT count(*) FROM pg_settings WHERE name
> = 'basic_archive.archive_directory';
> count
> -------
> 0
> (1 row)
>
> show can find it if I use the complete name but tab completion can't find
> the guc:
>
> [local]:5656 benoit@postgres=# show basic_archive.archive_directory;
> basic_archive.archive_directory
> ---------------------------------
> /home/benoit/tmp/tmp/archives
> (1 row)
I think the reason is that only the archiver process loads the library, so
the GUC isn't registered at startup like you'd normally see with
shared_preload_libraries. IIUC the server will still create a placeholder
GUC during startup for custom parameters, which is why it shows up for SHOW
commands.
--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com