Re: Slow catchup of 2PC (twophase) transactions on replica in LR

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>
Cc: Peter Smith <smithpb2250(at)gmail(dot)com>, "Zhijie Hou (Fujitsu)" <houzj(dot)fnst(at)fujitsu(dot)com>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Vitaly Davydov <v(dot)davydov(at)postgrespro(dot)ru>, Ajin Cherian <itsajin(at)gmail(dot)com>
Subject: Re: Slow catchup of 2PC (twophase) transactions on replica in LR
Date: 2024-07-22 06:57:26
Message-ID: CAA4eK1JZhA5LWWKDii3AzBruvjhPZcDD9fWFS90_jdf7y-1UUQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Jul 22, 2024 at 8:26 AM Hayato Kuroda (Fujitsu)
<kuroda(dot)hayato(at)fujitsu(dot)com> wrote:
>
> ```
> @@ -1089,6 +1089,12 @@ CheckAlterSubOption(Subscription *sub, const char *option,
> * is because both failover and two_phase options of the slot on the
> * publisher cannot be modified if the slot is currently acquired by the
> * existing walsender.
> + *
> + * XXX: when toggling two_phase from "false" to "true", the slot parameter
> + * is not modified by the backend process so that the lock conflict won't
> + * occur. The restarted walsender will do the alternation. Therefore, we
> + * can allow to switch without the restriction. This can be changed in
> + * the future based on the requirement.
> ```
>
>

I used a slightly different comment in the attached. Apart from this,
I also addressed comments by Vignesh and Peter. Let me know if I
missed anything.

--
With Regards,
Amit Kapila.

Attachment Content-Type Size
v22-0001-Allow-altering-of-two_phase-option-for-a-SUBSCRI.patch application/octet-stream 38.5 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bertrand Drouvot 2024-07-22 07:01:41 Re: Flush pgstats file during checkpoints
Previous Message Will Mortensen 2024-07-22 06:46:51 Re: Exposing the lock manager's WaitForLockers() to SQL