From: | Atsushi Torikoshi <atorik(at)gmail(dot)com> |
---|---|
To: | Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com> |
Cc: | Jehan-Guillaume de Rorthais <jgdr(at)dalibo(dot)com>, Sergei Kornilov <sk(at)zsrv(dot)org>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: replay pause vs. standby promotion |
Date: | 2020-03-20 06:22:53 |
Message-ID: | CACZ0uYGJ7YLRArqjwbZMdcuwMsYXZuZbGoG_EC837xz35AKbew@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Mar 6, 2020 at 10:18 PM Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>
wrote:
>
> OK, so patch attached.
>
> This patch causes, if a promotion is triggered while recovery is paused,
> the paused state to end and a promotion to continue. OTOH, this patch
> makes pg_wal_replay_pause() and _resume() throw an error if it's executed
> while a promotion is ongoing.
Regarding recovery_target_action, if the recovery target is reached
> while a promotion is ongoing, "pause" setting will act the same as
> "promote",
> i.e., recovery will finish and the server will start to accept connections.
>
> To implement the above, I added new shared varible indicating whether
> a promotion is triggered or not. Only startup process can update this
> shared
> variable. Other processes like read-only backends can check whether
> promotion is ongoing, via this variable.
>
> I added new function PromoteIsTriggered() that returns true if a promotion
> is triggered. Since the name of this function and the existing function
> IsPromoteTriggered() are confusingly similar, I changed the name of
> IsPromoteTriggered() to IsPromoteSignaled, as more appropriate name.
>
I've confirmed the patch works as you described above.
And I also poked around it a little bit but found no problems.
Regards,
--
Atsushi Torikoshi
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2020-03-20 06:44:33 | Re: Berserk Autovacuum (let's save next Mandrill) |
Previous Message | Andres Freund | 2020-03-20 06:20:31 | Re: Berserk Autovacuum (let's save next Mandrill) |