Fix test race between primary XLOG_RUNNING_XACTS and standby logical slot.

Noah Misch <noah@leadboat.com>

Commit: c59a97313ba34aeb4b1670307c0228fb94694adb
Author: Noah Misch <noah@leadboat.com>
Date: 2024-02-19T20:52:49Z
Releases: 16.3
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