On 21 May 2015 at 00:57, Fujii Masao <[email protected]> wrote:

> Make recovery_target_action = pause work.
>
> Previously even if recovery_target_action was set to pause and
> the recovery target was reached, the recovery could never be paused.
> Because the setting of pause was *always* overridden with that of
> shutdown unexpectedly. This override is valid and intentional
> if hot_standby is not enabled because there is no way to resume
> the paused recovery in this case and the setting of pause is
> completely useless. But not if hot_standby is enabled.
>
> This patch changes the code so that the setting of pause is overridden
> with that of shutdown only when hot_standby is not enabled.
>
> Bug reported by Andres Freund
>

Note for archives: this is a bug, not a change in behaviour.

The original coding of standbyState == STANDBY_DISABLED
wasn't correct because standbyState > STANDBY_DISABLED only after we run
InitRecoveryTransactionEnvironment() which happens later than this
parameter check.

-- 
Simon Riggs                http://www.2ndQuadrant.com/
<http://www.2ndquadrant.com/>
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Reply via email to