pgsql: Skip empty transaction stream in test_decoding.

From: Amit Kapila <akapila(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Skip empty transaction stream in test_decoding.
Date: 2020-09-11 04:43:59
Message-ID: E1kGaul-00084O-UE@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Skip empty transaction stream in test_decoding.

We were decoding empty transactions via streaming APIs added in commit
45fdc9738b even when the user used the option 'skip-empty-xacts'. The APIs
makes no effort to skip empty xacts under the assumption that we will
never try to stream such transactions. However, that is not true because
we can pick to stream a transaction that has change messages for
REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT and we don't send such messages to
downstream rather they are just to update the internal state. So, we need
to skip such xacts when plugin uses the option 'skip-empty-xacts'.

Diagnosed-By: Amit Kapila
Author: Dilip Kumar
Reviewed-by: Amit Kapila
Discussion: https://postgr.es/m/CAA4eK1+OqgFNZkf7=ETe_y5ntjgDk3T0wcdkd4Sot_u1hySGfw@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0ba5181c00eb0216bdfd9afbf3d680fee67d34b3

Modified Files
--------------
contrib/test_decoding/Makefile | 2 +-
.../test_decoding/expected/concurrent_stream.out | 19 ++++++++
contrib/test_decoding/expected/stream.out | 5 +-
contrib/test_decoding/specs/concurrent_stream.spec | 37 +++++++++++++++
contrib/test_decoding/test_decoding.c | 55 +++++++++++++++-------
5 files changed, 95 insertions(+), 23 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2020-09-11 15:59:33 pgsql: Update copyright year
Previous Message Tom Lane 2020-09-10 22:43:40 pgsql: Doc: some more v13 release note tweaking.