Re: logical replication empty transactions - Mailing list pgsql-hackers

From Ajin Cherian
Subject Re: logical replication empty transactions
Date
Msg-id CAFPTHDYBWR6gv3zWgAOARi0AABnXXpU8xgjXHAVF2rKJxfqxpA@mail.gmail.com
Whole thread Raw
In response to RE: logical replication empty transactions  ("shiy.fnst@fujitsu.com" <shiy.fnst@fujitsu.com>)
Responses Re: logical replication empty transactions  (Ajin Cherian <itsajin@gmail.com>)
List pgsql-hackers
On Mon, Mar 7, 2022 at 7:50 PM shiy.fnst@fujitsu.com
<shiy.fnst@fujitsu.com> wrote:
>
> On Fri, Mar 4, 2022 9:41 AM Ajin Cherian <itsajin@gmail.com> wrote:
> >
> > I have split the patch into two. I have kept the logic of skipping
> > streaming changes in the second patch.
> > I will work on the second patch once we can figure out a solution for
> > the COMMIT PREPARED after restart problem.
> >
>
> Thanks for updating the patch.
>
> A comment on v23-0001 patch.
>
> @@ -1429,6 +1520,19 @@ pgoutput_message(LogicalDecodingContext *ctx, ReorderBufferTXN *txn,
>         if (in_streaming)
>                 xid = txn->xid;
>
> +       /*
> +        * Output BEGIN if we haven't yet.
> +        * Avoid for non-transactional messages.
> +        */
> +       if (in_streaming || transactional)
> +       {
> +               PGOutputTxnData *txndata = (PGOutputTxnData *) txn->output_plugin_private;
> +
> +               /* Send BEGIN if we haven't yet */
> +               if (txndata && !txndata->sent_begin_txn)
> +                       pgoutput_send_begin(ctx, txn);
> +       }
> +
>         OutputPluginPrepareWrite(ctx, true);
>         logicalrep_write_message(ctx->out,
>                                                          xid,
>
> I think we don't need to send BEGIN if in_streaming is true, right? The first
> patch doesn't skip streamed transaction, so should we modify
> +       if (in_streaming || transactional)
> to
> +       if (!in_streaming && transactional)
> ?
>

Fixed.

regards,
Ajin Cherian
Fujitsu Australia

Attachment

pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: Expose JIT counters/timing in pg_stat_statements
Next
From: Dmitry Dolgov
Date:
Subject: Re: Expose JIT counters/timing in pg_stat_statements