Hi Alvaro,
On Tue, 27 Jul 2021 at 22:17, Alvaro Herrera <alvhe...@alvh.no-ip.org> wrote: > I tested this -- it works correctly AFAICS. > Nope, IMO it doesn't work correctly. Lets say we have recovery_target = '' in the config: localhost/postgres=# select name, setting, setting is null, pending_restart from pg_settings where name = 'recovery_target'; name │ setting │ ?column? │ pending_restart ─────────────────┼─────────┼──────────┼───────────────── recovery_target │ │ f │ f (1 row) After that we remove it from the config and call pg_ctl reload. It sets the panding_restart. localhost/postgres=# select name, setting, setting is null, pending_restart from pg_settings where name = 'recovery_target'; name │ setting │ ?column? │ pending_restart ─────────────────┼─────────┼──────────┼───────────────── recovery_target │ │ f │ t (1 row) IMO is totally wrong, because the actual value didn't change: it was an empty string in the config and now it remains an empty string due to the default value in the guc.c Regards, -- Alexander Kukushkin