Stabilize timeline switch regression test.
authorFujii Masao
Thu, 14 Jan 2021 05:37:01 +0000 (14:37 +0900)
committerFujii Masao
Thu, 14 Jan 2021 14:55:33 +0000 (23:55 +0900)
Commit fef5b47f6b added the regression test to check whether a standby is
able to follow a primary on a newer timeline when WAL archiving is enabled.
But the buildfarm member florican reported that this test failed because
the requested WAL segment was removed and replication failed. This is a
timing issue. Since neither replication slot is used nor wal_keep_size is set
in the test, checkpoint could remove the WAL segment that's still necessary
for replication.

This commit stabilizes the test by setting wal_keep_size.

Back-patch to v13 where the regression test that this commit stabilizes
was added.

Author: Fujii Masao
Discussion: https://postgr.es/m/X//[email protected]

src/test/recovery/t/004_timeline_switch.pl

index 8dad044db4b0167ba75d954cd6b414acaf0401f7..c8dbd8f9df3ed68e6904c57a8e0035f20260ee8d 100644 (file)
@@ -75,6 +75,10 @@ is($result, qq(2000), 'check content of standby 2');
 # Initialize primary node
 my $node_primary_2 = get_new_node('primary_2');
 $node_primary_2->init(allows_streaming => 1, has_archiving => 1);
+$node_primary_2->append_conf(
+   'postgresql.conf', qq(
+wal_keep_size = 512MB
+));
 $node_primary_2->start;
 
 # Take backup