Re: [HACKERS] logical decoding of two-phase transactions

From: Ajin Cherian <itsajin(at)gmail(dot)com>
To: Peter Smith <smithpb2250(at)gmail(dot)com>
Cc: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] logical decoding of two-phase transactions
Date: 2021-03-05 06:50:42
Message-ID: CAFPTHDZduc2fDzqd_L4vPmA2R+-e8nEbau9HseHHi82w=p-uvQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Mar 4, 2021 at 9:53 PM Peter Smith <smithpb2250(at)gmail(dot)com> wrote:

> [05a] Now syncing the psf file at prepare time

The patch v46-0008 does not handle spooling of streaming prepare if
the Subscription is configured for both two-phase and streaming.
I feel that it would be best if we don't support both two-phase and
streaming together in a subscription in this release.
Probably a future release could handle this. So, changing the patch to
not allow streaming and two-phase together.
This new patch v49 has the following changes.

* Don't support creating a subscription with both streaming and
two-phase enabled.
* Don't support altering a subscription enabling streaming if it was
created with two-phase enabled.
* Remove stream_prepare callback as a "required" callback, make it an
optional callback and remove all code related to stream_prepare in the
pgoutput plugin as well as in worker.c

Also fixed
* Don't support the alter of subscription setting two-phase. Toggling
of two-phase mode using the alter command on the subscription can
cause transactions to be missed and result in an inconsistent replica.

regards,
Ajin Cherian
Fujitsu Australia

Attachment Content-Type Size
v49-0001-Refactor-spool-file-logic-in-worker.c.patch application/octet-stream 3.6 KB
v49-0005-Support-2PC-txn-subscriber-tests.patch application/octet-stream 24.5 KB
v49-0004-Add-two_phase-option-to-CREATE-REPLICATION-SLOT.patch application/octet-stream 7.1 KB
v49-0002-Track-replication-origin-progress-for-rollbacks.patch application/octet-stream 3.9 KB
v49-0003-Add-support-for-apply-at-prepare-time-to-built-i.patch application/octet-stream 32.3 KB
v49-0006-Support-2PC-txn-Subscription-option.patch application/octet-stream 35.8 KB
v49-0007-Tablesync-early-exit.patch application/octet-stream 1.2 KB
v49-0008-Fix-apply-worker-empty-prepare.patch application/octet-stream 32.1 KB
v49-0009-Fix-apply-worker-empty-prepare-dev-logs.patch application/octet-stream 14.9 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message houzj.fnst@fujitsu.com 2021-03-05 06:57:06 RE: Avoid CommandCounterIncrement in RI trigger when INSERT INTO referencing table
Previous Message tsunakawa.takay@fujitsu.com 2021-03-05 06:33:16 RE: Avoid CommandCounterIncrement in RI trigger when INSERT INTO referencing table