Make stream_prepare an optional callback

From: Ajin Cherian <itsajin(at)gmail(dot)com>
To: PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>
Cc: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Subject: Make stream_prepare an optional callback
Date: 2021-03-08 09:13:07
Message-ID: CAFPTHDY46BVjzXwq_4=C+epEXK99SazH3sv2h=0_SDQvsndAUQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Hackers,

As part of commit 0aa8a0
<https://github.com/postgres/postgres/commit/0aa8a01d04c8fe200b7a106878eebc3d0af9105c>
,
new plugin methods (callbacks) were defined for enabling two_phase commits.
5 callbacks were required:
* begin_prepare
* prepare
* commit_prepared
* rollback_prepared
* stream_prepare

and 1 callback was optional:
* filter_prepare

I don't think stream_prepare should be made a required callback for
enabling two_phase commits. stream_prepare callback is required when a
logical replication slot is configured both for streaming in-progress
transactions and two_phase commits. Plugins can and should be allowed to
disallow this combination of allowing both streaming and two_phase at the
same time. In which case, stream_prepare should be an optional callback.
Attaching a patch that makes this change. Let me know if you have any
comments.

regards,
Ajin Cherian
Fujitsu Australia.

Attachment Content-Type Size
0001-Make-stream_prepare_cb-an-optional-callback.patch application/octet-stream 4.1 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message houzj.fnst@fujitsu.com 2021-03-08 09:18:38 RE: should INSERT SELECT use a BulkInsertState?
Previous Message houzj.fnst@fujitsu.com 2021-03-08 09:07:11 RE: should INSERT SELECT use a BulkInsertState?