[PATCH] Present all committed transaction to the output plugin

From: Markus Wanner <markus(dot)wanner(at)enterprisedb(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: [PATCH] Present all committed transaction to the output plugin
Date: 2021-02-19 12:36:25
Message-ID: 8daecb44-c214-765d-5a67-3539bd153367@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

attached is a patch that I think is cleaning up the API between Postgres
and the logical decoding plugin. Up until now, not only transactions
rolled back, but also some committed transactions were filtered and not
presented to the output plugin. While it is documented that aborted
transactions are not decoded, the second exception has not been documented.

The difference is with committed empty transactions that have a snapshot
versus those that do not. I think that's arbitrary and propose to
remove this distinction, so that all committed transactions are decoded.

In the case of decoding a two-phase transaction, I argue that this is
even more important, as the gid potentially carries information.

Please consider the attached patch, which drops the mentioned filter.
It also adjusts tests to show the difference and provides a minor
clarification to the documentation.

Regards

Markus

Attachment Content-Type Size
0001-Present-committed-transactions-to-output-plugin.patch text/x-patch 13.9 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joel Jacobson 2021-02-19 12:45:34 Re: Some regular-expression performance hacking
Previous Message Damir Simunic 2021-02-19 12:29:57 Re: Extensibility of the PostgreSQL wire protocol