pgsql: Skip isolation tests that terminate other backends on Windows

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Skip isolation tests that terminate other backends on Windows
Date: 2026-10-05 02:12:28
Message-ID: E1xDYBo-00000000LNg-19i3@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Skip isolation tests that terminate other backends on Windows

On Windows, a backend exiting resets its connection, and the client
discards any data not yet read, including the FATAL message of a
terminated backend. isolationtester polls one connection at a time, so
when it waits on a different session the message can get lost, failing
the permutation and the tests that run after it.

wait_cleanup in injection_points (down to v17) and slot_creation_error
in test_decoding (down to v15) have this pattern, and have been failing
randomly in the buildfarm. Let's skip them on Windows.

The cause of the instabilities is proving to be tricky to deal with,
pointing for example at 29992a6a509b. This will be tackled later,
perhaps with a backpatch (or perhaps with a HEAD-only solution), but it
is difficult to be sure at this stage of the work. In theory,
a8458f508a7 should make a revert of 29992a6a509b (revert of a revert!)
safe on WIN32.

Note that 278cdea6b9d2, that has introduced the isolation test
slot_creation_error in test_decoding, has mentioned the potential output
instability.

Author: Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>
Author: Michael Paquier <michael(at)paquier(dot)xyz>
Discussion: https://postgr.es/m/CAN4CZFOoiKa9E4Gnh_OzLk3S5Z6RFyg_oY1e_WddCVYhkpTVow@mail.gmail.com
Backpatch-through: 15

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e0f633ca6bc6a2ace3e6c0e79157c3bf0edddfbe

Modified Files
--------------
contrib/test_decoding/Makefile | 8 ++++-
contrib/test_decoding/meson.build | 40 +++++++++++++----------
src/test/modules/injection_points/Makefile | 7 +++-
src/test/modules/injection_points/meson.build | 46 ++++++++++++++++-----------
4 files changed, 64 insertions(+), 37 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2026-10-05 02:59:04 pgsql: Use tuplestore_clear instead of tuplestore_end in nodeTableFuncs
Previous Message David Rowley 2026-10-05 00:42:44 pgsql: Use tuplestore_clear instead of tuplestore_end in nodeMaterial.c