1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

Allow walreceiver configuration to change on reload

The parameters primary_conninfo, primary_slot_name and
wal_receiver_create_temp_slot can now be changed with a simple "reload"
signal, no longer requiring a server restart.  This is achieved by
signalling the walreceiver process to terminate and having it start
again with the new values.

Thanks to Andres Freund, Kyotaro Horiguchi, Fujii Masao for discussion.

Author: Sergei Kornilov <sk@zsrv.org>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Discussion: https://postgr.es/m/19513901543181143@sas1-19a94364928d.qloud-c.yandex.net
This commit is contained in:
Alvaro Herrera
2020-03-27 19:43:41 -03:00
parent 092c6936de
commit 1e6148032e
10 changed files with 179 additions and 68 deletions

View File

@ -2050,7 +2050,7 @@ static struct config_bool ConfigureNamesBool[] =
},
{
{"wal_receiver_create_temp_slot", PGC_POSTMASTER, REPLICATION_STANDBY,
{"wal_receiver_create_temp_slot", PGC_SIGHUP, REPLICATION_STANDBY,
gettext_noop("Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured."),
},
&wal_receiver_create_temp_slot,
@ -3717,7 +3717,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"primary_conninfo", PGC_POSTMASTER, REPLICATION_STANDBY,
{"primary_conninfo", PGC_SIGHUP, REPLICATION_STANDBY,
gettext_noop("Sets the connection string to be used to connect to the sending server."),
NULL,
GUC_SUPERUSER_ONLY
@ -3728,7 +3728,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"primary_slot_name", PGC_POSTMASTER, REPLICATION_STANDBY,
{"primary_slot_name", PGC_SIGHUP, REPLICATION_STANDBY,
gettext_noop("Sets the name of the replication slot to use on the sending server."),
NULL
},