Thread: pgsql: Add two-phase option in pg_createsubscriber.

pgsql: Add two-phase option in pg_createsubscriber.

From
Amit Kapila
Date:
Add two-phase option in pg_createsubscriber.

This patch introduces the '--enable-two-phase' option to the
'pg_createsubscriber' utility, allowing users to enable two-phase commit
for all subscriptions during their creation.

Note that even without this option users can enable the two_phase option
for the subscriptions created by pg_createsubscriber. However, it requires
the subscription to be disabled first which could be inconvenient for
users.

When two-phase commit is enabled, prepared transactions are sent to the
subscriber at the time of 'PREPARE TRANSACTION', and they are processed as
two-phase transactions on the subscriber as well. If disabled, prepared
transactions are sent only when committed and are processed immediately by
the subscriber.

Author: Shubham Khanna <khannashubham1197@gmail.com>
Reviewed-by: vignesh C <vignesh21@gmail.com>
Reviewed-by: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Reviewed-by: Peter Smith <smithpb2250@gmail.com>
Reviewed-by: Ajin Cherian <itsajin@gmail.com>
Reviewed-by: Amit Kapila <amit.kapila16@gmail.com>
Discussion: https://postgr.es/m/CAHv8RjLPdFP=kA5LNSmWZ=+GMXmO+LczvV6p9HJjsXxZz10KGA@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e117cfb2f6c67fe4ba46720bc6917da3dbd48c10

Modified Files
--------------
doc/src/sgml/ref/pg_createsubscriber.sgml          | 18 ++++-
src/bin/pg_basebackup/pg_createsubscriber.c        | 84 ++++++++++++++--------
src/bin/pg_basebackup/t/040_pg_createsubscriber.pl | 11 +++
3 files changed, 83 insertions(+), 30 deletions(-)