diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-10-11 17:39:52 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-10-11 17:48:08 +0300 |
commit | 6f60fdd7015b032bf49273c99f80913d57eac284 (patch) | |
tree | ef9a5602c01617665815503a45dc1ea3b379e757 /src/backend/utils/misc/guc.c | |
parent | 8521d131941be5a177270bc428fa8e684cd645b5 (diff) |
Improve replication connection timeouts.
Rename replication_timeout to wal_sender_timeout, and add a new setting
called wal_receiver_timeout that does the same at the walreceiver side.
There was previously no timeout in walreceiver, so if the network went down,
for example, the walreceiver could take a long time to notice that the
connection was lost. Now with the two settings, both sides of a replication
connection will detect a broken connection similarly.
It is no longer necessary to manually set wal_receiver_status_interval to
a value smaller than the timeout. Both wal sender and receiver now
automatically send a "ping" message if more than 1/2 of the configured
timeout has elapsed, and it hasn't received any messages from the other end.
Amit Kapila, heavily edited by me.
Diffstat (limited to 'src/backend/utils/misc/guc.c')
-rw-r--r-- | src/backend/utils/misc/guc.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 6b202e04256..745e7be68e4 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -1596,6 +1596,17 @@ static struct config_int ConfigureNamesInt[] = }, { + {"wal_receiver_timeout", PGC_SIGHUP, REPLICATION_STANDBY, + gettext_noop("Sets the maximum wait time to receive data from master."), + NULL, + GUC_UNIT_MS + }, + &wal_receiver_timeout, + 60 * 1000, 0, INT_MAX, + NULL, NULL, NULL + }, + + { {"max_connections", PGC_POSTMASTER, CONN_AUTH_SETTINGS, gettext_noop("Sets the maximum number of concurrent connections."), NULL @@ -2019,12 +2030,12 @@ static struct config_int ConfigureNamesInt[] = }, { - {"replication_timeout", PGC_SIGHUP, REPLICATION_SENDING, + {"wal_sender_timeout", PGC_SIGHUP, REPLICATION_SENDING, gettext_noop("Sets the maximum time to wait for WAL replication."), NULL, GUC_UNIT_MS }, - &replication_timeout, + &wal_sender_timeout, 60 * 1000, 0, INT_MAX, NULL, NULL, NULL }, |