public inbox for [email protected]
help / color / mirror / Atom feedFrom: Alexander Lakhin <[email protected]>
To: Melanie Plageman <[email protected]>
To: Andres Freund <[email protected]>
Cc: Andrey Borodin <[email protected]>
Cc: Kirill Reshke <[email protected]>
Cc: Chao Li <[email protected]>
Cc: Xuneng Zhou <[email protected]>
Cc: Robert Haas <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Cc: Heikki Linnakangas <[email protected]>
Subject: Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access)
Date: Thu, 29 Jan 2026 07:00:00 +0200
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAAKRu_bs+gZ83QDacmBxunPvCGnXJ05hxP2BDPJ3BGwdbGRXzg@mail.gmail.com>
References: <CABPTF7X1X810eT7hjRz9M69sjMv1Vui5gXQEGhqYXmkmywhHCQ@mail.gmail.com>
<CAAKRu_ZcK+ez71W7j+QzMo0gSafTsbGA3TU-fVSptw7yh41BEQ@mail.gmail.com>
<[email protected]>
<CAAKRu_ZCjHoRPfQ8AbMrFY8TOMCPAvZ0_m9SX7yg0edfTk45-g@mail.gmail.com>
<[email protected]>
<CAAKRu_a04jbDACwzRYwzDND31aPyf7Yvz9TAZrTr=+F5bK1aVA@mail.gmail.com>
<CALdSSPjcv25jmXm29X-MRWZBae6+HwcWfVH1PE8NfD=EMTnkAg@mail.gmail.com>
<CAAKRu_bwtBEzDwemyim1r6yYonw7FTyFr1HXG8vywCe-MdbPBQ@mail.gmail.com>
<[email protected]>
<CAAKRu_YQd=2KvomM+RHcpeDKj0bq+peJ=3W-fip+pkvzA-Jq9w@mail.gmail.com>
<7ib3sa55sapwjlaz4sijbiq7iezna27kjvvvar4dpgkmadml6t@gfpkkwmdnepx>
<CAAKRu_bs+gZ83QDacmBxunPvCGnXJ05hxP2BDPJ3BGwdbGRXzg@mail.gmail.com>
Hello Melanie,
29.01.2026 01:16, Melanie Plageman wrote:
> Thanks for the review!
> I pushed v33 0001-0003 after incorporating your feedback.
The buildfarm animal scorpion has detected an instability of the addition
to pg_visibility from 21796c267 [1]:
80/82 postgresql:pg_visibility-running / pg_visibility-running/regress ERROR 7.23s exit status 1
diff -U3 /home/bf/bf-build/scorpion/HEAD/pgsql/contrib/pg_visibility/expected/pg_visibility.out
/home/bf/bf-build/scorpion/HEAD/pgsql.build/testrun/pg_visibility-running/regress/results/pg_visibility.out
--- /home/bf/bf-build/scorpion/HEAD/pgsql/contrib/pg_visibility/expected/pg_visibility.out 2026-01-26 22:07:12.923378464
+0100
+++ /home/bf/bf-build/scorpion/HEAD/pgsql.build/testrun/pg_visibility-running/regress/results/pg_visibility.out
2026-01-28 20:15:13.802517085 +0100
@@ -213,7 +213,7 @@
select pg_visibility_map_summary('test_vac_unmodified_heap');
pg_visibility_map_summary
---------------------------
- (1,1)
+ (0,0)
(1 row)
-- the checkpoint cleans the buffer dirtied by freezing the sole tuple
@@ -237,7 +237,7 @@
FROM page_header(get_raw_page('test_vac_unmodified_heap', 0));
?column?
----------
- t
+ f
(1 row)
-- vacuum sets the VM
I've managed to reproduce it locally with the attached and:
echo "autovacuum_naptime = 1" > /tmp/temp.config
TEMP_CONFIG=/tmp/temp.config make -s check -C contrib/pg_visibility/
...
ok 85 - pg_visibility 30 ms
not ok 86 - pg_visibility 165 ms
ok 87 - pg_visibility 36 ms
...
# 1 of 100 tests failed.
Could you please look at this?
Probably you'll find [2] helpful.
[1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=scorpion&dt=2026-01-28%2019%3A07%3A32
[2] https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=1c64d2fcb
Best regards,
Alexander
Attachments:
[text/x-patch] debug-pg_visibility.patch (1.6K, 3-debug-pg_visibility.patch)
download | inline diff:
diff --git a/contrib/pg_visibility/Makefile b/contrib/pg_visibility/Makefile
index e5a74f32c48..8e3434a808e 100644
--- a/contrib/pg_visibility/Makefile
+++ b/contrib/pg_visibility/Makefile
@@ -11,7 +11,7 @@ DATA = pg_visibility--1.1.sql pg_visibility--1.1--1.2.sql \
PGFILEDESC = "pg_visibility - page visibility information"
EXTRA_INSTALL = contrib/pageinspect
-REGRESS = pg_visibility
+REGRESS = $(shell printf 'pg_visibility %.0s' `seq 100`)
TAP_TESTS = 1
ifdef USE_PGXS
diff --git a/contrib/pg_visibility/expected/pg_visibility.out b/contrib/pg_visibility/expected/pg_visibility.out
index e10f1706015..1e444558ac8 100644
--- a/contrib/pg_visibility/expected/pg_visibility.out
+++ b/contrib/pg_visibility/expected/pg_visibility.out
@@ -1,5 +1,8 @@
-CREATE EXTENSION pg_visibility;
-CREATE EXTENSION pageinspect;
+SET client_min_messages TO 'warning';
+CREATE EXTENSION IF NOT EXISTS pg_visibility;
+CREATE EXTENSION IF NOT EXISTS pageinspect;
+DROP TABLE IF EXISTS test_vac_unmodified_heap;
+RESET client_min_messages;
--
-- recently-dropped table
--
diff --git a/contrib/pg_visibility/sql/pg_visibility.sql b/contrib/pg_visibility/sql/pg_visibility.sql
index 57af8a0c5b6..78fd52a0b73 100644
--- a/contrib/pg_visibility/sql/pg_visibility.sql
+++ b/contrib/pg_visibility/sql/pg_visibility.sql
@@ -1,5 +1,8 @@
-CREATE EXTENSION pg_visibility;
-CREATE EXTENSION pageinspect;
+SET client_min_messages TO 'warning';
+CREATE EXTENSION IF NOT EXISTS pg_visibility;
+CREATE EXTENSION IF NOT EXISTS pageinspect;
+DROP TABLE IF EXISTS test_vac_unmodified_heap;
+RESET client_min_messages;
--
-- recently-dropped table
view thread (17+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access)
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox