Rename min_recovery_apply_delay to recovery_min_apply_delay.
Per discussion, this seems like a more consistent choice of name. Fabrízio de Royes Mello, after a suggestion by Peter Eisentraut; some additional documentation wordsmithing by me
This commit is contained in:
parent
f825c7c850
commit
0d0b2bf175
@ -403,15 +403,15 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="min-recovery-apply-delay" xreflabel="min_recovery_apply_delay">
|
||||
<term><varname>min_recovery_apply_delay</varname> (<type>integer</type>)
|
||||
<varlistentry id="recovery-min-apply-delay" xreflabel="recovery_min_apply_delay">
|
||||
<term><varname>recovery_min_apply_delay</varname> (<type>integer</type>)
|
||||
<indexterm>
|
||||
<primary><varname>min_recovery_apply_delay</> recovery parameter</primary>
|
||||
<primary><varname>recovery_min_apply_delay</> recovery parameter</primary>
|
||||
</indexterm>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
By default, a standby server keeps restoring WAL records from the
|
||||
By default, a standby server restores WAL records from the
|
||||
primary as soon as possible. It may be useful to have a time-delayed
|
||||
copy of the data, offering various options to correct data loss errors.
|
||||
This parameter allows you to delay recovery by a fixed period of time,
|
||||
@ -428,15 +428,15 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
|
||||
in transfer because of networks or cascading replication configurations
|
||||
may reduce the actual wait time significantly. If the system
|
||||
clocks on master and standby are not synchronised, this may lead to
|
||||
recovery applying records earlier than expected but is not a major issue
|
||||
because the useful settings of the parameter are much larger than
|
||||
typical time deviation between the servers. Be careful to allow for
|
||||
recovery applying records earlier than expected; but that is not a
|
||||
major issue because useful settings of the parameter are much larger
|
||||
than typical time deviations between servers. Be careful to allow for
|
||||
different timezone settings on master and standby.
|
||||
</para>
|
||||
<para>
|
||||
The delay occurs only on WAL records for COMMIT and Restore Points.
|
||||
Other records may be replayed earlier than the specified delay, which
|
||||
is not an issue for MVCC though may potentially increase the number
|
||||
is not an issue for MVCC though it may potentially increase the number
|
||||
of recovery conflicts generated.
|
||||
</para>
|
||||
<para>
|
||||
|
@ -775,10 +775,10 @@
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Allow <link
|
||||
Add <link
|
||||
linkend="recovery-config"><filename>recovery.conf</></link>
|
||||
parameter <link
|
||||
linkend="min-recovery-apply-delay"><varname>min_recovery_apply_delay</></link>
|
||||
linkend="recovery-min-apply-delay"><varname>recovery_min_apply_delay</></link>
|
||||
to force delayed replication (Robert Haas, Fabrízio de
|
||||
Royes Mello, Simon Riggs)
|
||||
</para>
|
||||
|
@ -129,20 +129,20 @@
|
||||
#
|
||||
# By default, a standby server keeps restoring XLOG records from the
|
||||
# primary indefinitely. If you want to stop the standby mode, finish recovery
|
||||
# and open the system in read/write mode, specify path to a trigger file.
|
||||
# and open the system in read/write mode, specify a path to a trigger file.
|
||||
# The server will poll the trigger file path periodically and start as a
|
||||
# primary server when it's found.
|
||||
#
|
||||
#trigger_file = ''
|
||||
#
|
||||
# By default, a standby server keeps restoring XLOG records from the
|
||||
# primary as soon as possible. If you want to explicitly delay the replay of
|
||||
# committed transactions from the master, specify a recovery apply delay.
|
||||
# For example, if you set this parameter to 5min, the standby will replay
|
||||
# each transaction commit only when the system time on the standby is at
|
||||
# least five minutes past the commit time reported by the master.
|
||||
# By default, a standby server restores XLOG records from the primary as
|
||||
# soon as possible. If you want to explicitly delay the replay of committed
|
||||
# transactions from the master, specify a minimum apply delay. For example,
|
||||
# if you set this parameter to 5min, the standby will replay each transaction
|
||||
# commit only when the system time on the standby is at least five minutes
|
||||
# past the commit time reported by the master.
|
||||
#
|
||||
#min_recovery_apply_delay = 0
|
||||
#recovery_min_apply_delay = 0
|
||||
#
|
||||
#---------------------------------------------------------------------------
|
||||
# HOT STANDBY PARAMETERS
|
||||
|
@ -223,7 +223,7 @@ static bool recoveryPauseAtTarget = true;
|
||||
static TransactionId recoveryTargetXid;
|
||||
static TimestampTz recoveryTargetTime;
|
||||
static char *recoveryTargetName;
|
||||
static int min_recovery_apply_delay = 0;
|
||||
static int recovery_min_apply_delay = 0;
|
||||
static TimestampTz recoveryDelayUntilTime;
|
||||
|
||||
/* options taken from recovery.conf for XLOG streaming */
|
||||
@ -5236,18 +5236,19 @@ readRecoveryCommandFile(void)
|
||||
(errmsg_internal("trigger_file = '%s'",
|
||||
TriggerFile)));
|
||||
}
|
||||
else if (strcmp(item->name, "min_recovery_apply_delay") == 0)
|
||||
else if (strcmp(item->name, "recovery_min_apply_delay") == 0)
|
||||
{
|
||||
const char *hintmsg;
|
||||
|
||||
if (!parse_int(item->value, &min_recovery_apply_delay, GUC_UNIT_MS,
|
||||
if (!parse_int(item->value, &recovery_min_apply_delay, GUC_UNIT_MS,
|
||||
&hintmsg))
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
|
||||
errmsg("parameter \"%s\" requires a temporal value", "min_recovery_apply_delay"),
|
||||
errmsg("parameter \"%s\" requires a temporal value",
|
||||
"recovery_min_apply_delay"),
|
||||
hintmsg ? errhint("%s", _(hintmsg)) : 0));
|
||||
ereport(DEBUG2,
|
||||
(errmsg("min_recovery_apply_delay = '%s'", item->value)));
|
||||
(errmsg("recovery_min_apply_delay = '%s'", item->value)));
|
||||
}
|
||||
else
|
||||
ereport(FATAL,
|
||||
@ -5669,7 +5670,7 @@ SetRecoveryPause(bool recoveryPause)
|
||||
}
|
||||
|
||||
/*
|
||||
* When min_recovery_apply_delay is set, we wait long enough to make sure
|
||||
* When recovery_min_apply_delay is set, we wait long enough to make sure
|
||||
* certain record types are applied at least that interval behind the master.
|
||||
*
|
||||
* Returns true if we waited.
|
||||
@ -5690,7 +5691,7 @@ recoveryApplyDelay(XLogRecord *record)
|
||||
int microsecs;
|
||||
|
||||
/* nothing to do if no delay configured */
|
||||
if (min_recovery_apply_delay == 0)
|
||||
if (recovery_min_apply_delay == 0)
|
||||
return false;
|
||||
|
||||
/*
|
||||
@ -5711,7 +5712,7 @@ recoveryApplyDelay(XLogRecord *record)
|
||||
return false;
|
||||
|
||||
recoveryDelayUntilTime =
|
||||
TimestampTzPlusMilliseconds(xtime, min_recovery_apply_delay);
|
||||
TimestampTzPlusMilliseconds(xtime, recovery_min_apply_delay);
|
||||
|
||||
/*
|
||||
* Exit without arming the latch if it's already past time to apply this
|
||||
|
Loading…
x
Reference in New Issue
Block a user