postgres.git / summary / log / commit / refs

commit    4dc2cb74d00ed487ec785cdc66a5a5a0a9aa40b2
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Tue Nov 09 23:40:19 2021 +0000
First released in: 15.0, 10.20, 11.15, 12.10, 13.6, 14.2

    Fix instability in 026_overwrite_contrecord.pl test.
    
    We've seen intermittent failures in this test on slower buildfarm
    machines, which I think can be explained by assuming that autovacuum
    emitted some additional WAL.  Disable autovacuum to stabilize it.
    
    In passing, use stringwise not numeric comparison to compare
    WAL file names.  Doesn't matter at present, but they are
    hex strings not decimal ...
    
    Discussion: https://postgr.es/m/1372189.1636499287@sss.pgh.pa.us


src/test/recovery/t/026_overwrite_contrecord.pl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/test/recovery/t/026_overwrite_contrecord.pl b/src/test/recovery/t/026_overwrite_contrecord.pl index 9476f5f6dc4..867b75937eb 100644 --- a/src/test/recovery/t/026_overwrite_contrecord.pl +++ b/src/test/recovery/t/026_overwrite_contrecord.pl @@ -19,7 +19,12 @@ plan tests => 3; my $node = PostgresNode->get_new_node('primary'); $node->init(allows_streaming => 1); -$node->append_conf('postgresql.conf', 'wal_keep_segments=16'); +# We need these settings for stability of WAL behavior. +$node->append_conf( + 'postgresql.conf', qq( +autovacuum = off +wal_keep_segments = 16 +)); $node->start; $node->safe_psql('postgres', 'create table filler (a int, b text)'); @@ -58,7 +63,7 @@ $node->safe_psql('postgres', #$node->safe_psql('postgres', qq{create table foo ()}); my $endfile = $node->safe_psql('postgres', 'SELECT pg_walfile_name(pg_current_wal_insert_lsn())'); -ok($initfile != $endfile, "$initfile differs from $endfile"); +ok($initfile ne $endfile, "$initfile differs from $endfile"); # Now stop abruptly, to avoid a stop checkpoint. We can remove the tail file # afterwards, and on startup the large message should be overwritten with new [parent: 7f05af399052]