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

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Jeff Davis <pgsql@j-davis.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, 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-09T22:47:43Z
Lists: pgsql-hackers
Jeff Davis <pgsql@j-davis.com> writes:
> On Wed, 2021-06-09 at 16:50 +0530, Amit Kapila wrote:
>> BTW, can't we consider it to be part of
>> create_slot_opt_list?

> Yes, that would be better. It looks like the physical and logical slot
> options are mixed together -- should they be separated in the grammar
> so that using an option with the wrong kind of slot would be a parse
> error?

That sort of parse error is usually pretty unfriendly to users who
may not quite remember which options are for what; all they'll get
is "syntax error" which won't illuminate anything.  I'd rather let
the grammar accept both, and throw an appropriate error further
downstream.

			regards, tom lane



Commits

  1. Remove two_phase variable from CreateReplicationSlotCmd struct.

  2. Add option to enable two_phase commits via pg_create_logical_replication_slot.