summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2022-12-23 17:27:05 +0100
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2022-12-23 17:27:05 +0100
commit6602599ce25665394112b944f3cdbd68a2587d97 (patch)
tree26f66108def9e875da84983e211168b7c047d15c
parent878ce16056c087e2dcd7cc31cd7e4700f407a770 (diff)
downloadpostgresql-6602599ce25665394112b944f3cdbd68a2587d97.tar.gz
Fix end LSN determination in recently added test
The test added in commit e44dae07f931 has a thinko: it wants to read info about a few WAL records, but it obtains the LSN of the final record to read by asking for the WAL insert position; however, pg_get_wal_records_info only accepts to read up to the flush position (cf. IsFutureLSN()). In normal conditions there is no difference, since the last record written by the preceding loop is known flushed and it's the one the test wants; but it's possible to have some other process insert another WAL record that isn't flushed, and that causes the whole test to explode. Fix by having pg_get_wal_records_info() read only up to the flushed position. Backpatch to 15, which is where pg_walinspect appeared. Author: Karina Litskevich <litskevichkarina@gmail.com> Discussion: https://postgr.es/m/a5559c95-52c3-5eea-cd63-9b4f1c70ff96@gmail.com
-rw-r--r--src/test/modules/brin/t/02_wal_consistency.pl2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/test/modules/brin/t/02_wal_consistency.pl b/src/test/modules/brin/t/02_wal_consistency.pl
index f7dbb0d014..cbc269b1df 100644
--- a/src/test/modules/brin/t/02_wal_consistency.pl
+++ b/src/test/modules/brin/t/02_wal_consistency.pl
@@ -60,7 +60,7 @@ begin
end
$$;
});
-my $end_lsn = $whiskey->lsn('insert');
+my $end_lsn = $whiskey->lsn('flush');
my ($ret, $out, $err) = $whiskey->psql(
'postgres', qq{