1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-23 14:01:44 +03:00

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
This commit is contained in:
Tom Lane
2021-11-09 18:40:19 -05:00
parent 7f05af3990
commit 4dc2cb74d0

View File

@ -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