Re: pgsql: Make recovery_target_action = pause work.

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Fujii Masao <fujii(at)postgresql(dot)org>
Cc: pgsql-committers <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: Make recovery_target_action = pause work.
Date: 2015-05-21 16:25:16
Message-ID: CANP8+jLoOMkC4m+oVBVDF58d3X5RszRAxx30CGCsN74_36+=vA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On 21 May 2015 at 00:57, Fujii Masao <fujii(at)postgresql(dot)org> 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

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2015-05-21 21:21:51 pgsql: Improve packing/alignment annotation for ItemPointerData.
Previous Message Robert Haas 2015-05-21 15:44:41 pgsql: Correct two mistakes in the ALTER FOREIGN TABLE reference page.