Thread: [PATCH] Present all committed transaction to the output plugin

[PATCH] Present all committed transaction to the output plugin

From
Markus Wanner
Date:
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