From 34226d4ad7efbe85e6721e40a82498dac8ec6211 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Sat, 31 Aug 2024 14:32:08 +1200 Subject: [PATCH] Stabilize 039_end_of_wal test. The first test was sensitive to the insert LSN after setting up the catalogs, which depended on environmental things like the locales on the OS and usernames. Switch to a new WAL file before the first test, as a simple way to put every computer into the same state. Back-patch to all supported releases. Reported-by: Anton Voloshin Reported-by: Nathan Bossart Reviewed-by: Tom Lane Reviewed-by: Nathan Bossart Discussion: https://postgr.es/m/b26aeac2-cb6d-4633-a7ea-945baae83dcf%40postgrespro.ru --- src/test/recovery/t/039_end_of_wal.pl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl index f9acc83c7d..349bd44b72 100644 --- a/src/test/recovery/t/039_end_of_wal.pl +++ b/src/test/recovery/t/039_end_of_wal.pl @@ -251,6 +251,12 @@ $WAL_BLOCK_SIZE = get_int_setting($node, 'wal_block_size'); $TLI = $node->safe_psql('postgres', "SELECT timeline_id FROM pg_control_checkpoint();"); +# Initial LSN may vary across systems due to different catalog contents set up +# by initdb. Switch to a new WAL file so all systems start out in the same +# place. The first test depends on trailing zeroes on a page with a valid +# header. +$node->safe_psql('postgres', "SELECT pg_switch_wal();"); + my $end_lsn; my $prev_lsn;