diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index cee09c7681..46ffbff108 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -1939,8 +1939,11 @@ SET ENABLE_SEQSCAN TO OFF; Specifies the delay between activity rounds for WAL sender processes. In each round the WAL sender sends any WAL accumulated since the last round to the standby server. It then sleeps for - wal_sender_delay milliseconds, and repeats. The default - value is 200 milliseconds (200ms). + wal_sender_delay milliseconds, and repeats. The sleep + is interrupted by transaction commit, so the effects of a committed + transaction are sent to standby servers as soon as the commit + happens, regardless of this setting. The default value is one second + (1s). Note that on many systems, the effective resolution of sleep delays is 10 milliseconds; setting wal_sender_delay to a value that is not a multiple of 10 might have the same results as setting it to diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index eb99246e6d..49b49d2a18 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -73,7 +73,7 @@ bool am_walsender = false; /* Am I a walsender process ? */ /* User-settable parameters for walsender */ int max_wal_senders = 0; /* the maximum number of concurrent walsenders */ -int WalSndDelay = 200; /* max sleep time between some actions */ +int WalSndDelay = 1000; /* max sleep time between some actions */ /* * These variables are used similarly to openLogFile/Id/Seg/Off, diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 55cbf757b4..529148a040 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -1843,7 +1843,7 @@ static struct config_int ConfigureNamesInt[] = GUC_UNIT_MS }, &WalSndDelay, - 200, 1, 10000, NULL, NULL + 1000, 1, 10000, NULL, NULL }, { diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample index 6726733235..6bfd0fd87c 100644 --- a/src/backend/utils/misc/postgresql.conf.sample +++ b/src/backend/utils/misc/postgresql.conf.sample @@ -188,7 +188,7 @@ #max_wal_senders = 0 # max number of walsender processes # (change requires restart) -#wal_sender_delay = 200ms # walsender cycle time, 1-10000 milliseconds +#wal_sender_delay = 1s # walsender cycle time, 1-10000 milliseconds #wal_keep_segments = 0 # in logfile segments, 16MB each; 0 disables #vacuum_defer_cleanup_age = 0 # number of xacts by which cleanup is delayed