pgsql: Check that a promoted standby keeps its 8-byte OID counter

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Check that a promoted standby keeps its 8-byte OID counter
Date: 2026-09-14 03:07:38
Message-ID: E1x5x2g-00000000DvO-1US6@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Check that a promoted standby keeps its 8-byte OID counter

The counter reaches a standby through XLOG_NEXTOID and checkpoint
records. This commit adds a test to move the next OID past the 2^32
limit on a primary and read it back from the promoted standby. This
reuses the same trick as some of the previous tests, with a pg_resetwal
command setting the next OID to be larger than 2^32, combined with a
check based on pg_control_checkpoint().

This closes a testing gap of cb298616463d regarding the replay of
XLOG_NEXTOID, where this WAL record has been updated to pass down an
Oid8 value. By default, regression tests would use OIDs way below the
UINT32_MAX limit.

Author: Rui Zhao <zhaorui126(at)gmail(dot)com>
Discussion: https://postgr.es/m/CAHWVJhGkb1n_QSS4M=PKJD5HHcwK3KXpFwVxoRVLzAG3j+2fhQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/1cd8669179f41b939c08e84ddddd3bdce0e095ea

Modified Files
--------------
src/test/recovery/t/004_timeline_switch.pl | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Richard Guo 2026-09-14 03:31:59 pgsql: Fix stale copies of PHVs in subqueries
Previous Message Michael Paquier 2026-09-14 02:29:39 pgsql: Fix Makefile build