Re: pg_visibility's pg_check_visible() yields false positive when working in parallel with autovacuum - Mailing list pgsql-bugs

From Andres Freund
Subject Re: pg_visibility's pg_check_visible() yields false positive when working in parallel with autovacuum
Date
Msg-id 20220218165637.lp7ar3ana2xirsuc@alap3.anarazel.de
Whole thread Raw
In response to pg_visibility's pg_check_visible() yields false positive when working in parallel with autovacuum  (Daniel Shelepanov <deniel1495@mail.ru>)
Responses Re: pg_visibility's pg_check_visible() yields false positive when working in parallel with autovacuum  (Andres Freund <andres@anarazel.de>)
List pgsql-bugs
Hi,

On 2022-02-18 00:09:48 +0300, Daniel Shelepanov wrote:
> I've been examining a floating bug in pg_visibility. To reproduce it, you
> have to:
> 
> 1) apply a patch to pg_visibility's tests (you can find it attached)
> 
> 2) run test-icx.sh (attached) from the root of the postgresql's source tree

Could you try to minimize the script? A 300 line reproducer is quite long. And
it looks like it won't even work in non postgres-pro tree.


One thing to do would be to modify pg_visibility to elog(PANIC, "something")
when it encounters corruption. Then you would have a chance of inspecting the
state of the tuple/page in that moment.

Greetings,

Andres Freund



pgsql-bugs by date:

Previous
From: "Satish Nayak [NMC - IT]"
Date:
Subject: Re: BUG #17410: After upgrade to postgresql 12.9 from 12.6 , some of the statements having ”=” operator not returnin
Next
From: Andres Freund
Date:
Subject: Re: pg_visibility's pg_check_visible() yields false positive when working in parallel with autovacuum