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.
0001-Make-stream_prepare_cb-an-optional-callback.patch
Description: Binary data