Fix test race between primary XLOG_RUNNING_XACTS and standby logical slot.

Noah Misch <noah@leadboat.com>

Commit: 0e162810df7657bac24ba4657460a87104523fc6
Author: Noah Misch <noah@leadboat.com>
Date: 2024-02-19T20:52:28Z
Releases: 17.0
Fix test race between primary XLOG_RUNNING_XACTS and standby logical slot.

Before the previous commit, the test could hang until
LOG_SNAPSHOT_INTERVAL_MS (15s), until checkpoint_timeout (300s), or
indefinitely.  An indefinite hang was awfully improbable.  It entailed
the test reaching checkpoint_timeout before the
DecodingContextFindStartpoint() of a CREATE SUBSCRIPTION, yet after the
preceding WAL record.  Back-patch to v16, which introduced the test.

Bertrand Drouvot, reported by Noah Misch.

Discussion: https://postgr.es/m/20240211010227.a2.nmisch@google.com

Files

Discussion