Re: Decoding of two-phase xacts missing from CREATE_REPLICATION_SLOT command

Amit Kapila <amit.kapila16@gmail.com>

From: Amit Kapila <amit.kapila16@gmail.com>
To: Jeff Davis <pgsql@j-davis.com>
Cc: Ajin Cherian <itsajin@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Amit Kapila <akapila@postgresql.org>, vignesh C <vignesh21@gmail.com>, Peter Smith <smithpb2250@gmail.com>
Date: 2021-06-09T11:20:38Z
Lists: pgsql-hackers
On Wed, Jun 9, 2021 at 1:53 AM Jeff Davis <pgsql@j-davis.com> wrote:
>
> On Tue, 2021-06-08 at 17:41 +1000, Ajin Cherian wrote:
> > Here's an updated patchset that adds back in the option for two-phase
> > in CREATE_REPLICATION_SLOT command and a second patch that adds
> > support for
> > two-phase decoding in pg_recvlogical.
>
> A few things:
>
> * I suggest putting the TWO_PHASE keyword after the LOGICAL keyword
>

Isn't it better to add it after LOGICAL IDENT? In docs [1], we expect
that way. Also, see code in libpqrcv_create_slot where we expect them
to be together but we can change that if you still prefer to add it
after LOGICAL. BTW, can't we consider it to be part of
create_slot_opt_list?

Also, it might be good if we can add a test in
src/bin/pg_basebackup/t/030_pg_recvlogical

[1] - https://www.postgresql.org/docs/devel/logicaldecoding-walsender.html

-- 
With Regards,
Amit Kapila.



Commits

  1. Remove two_phase variable from CreateReplicationSlotCmd struct.

  2. Add option to enable two_phase commits via pg_create_logical_replication_slot.