public inbox for [email protected]  
help / color / mirror / Atom feed
From: Alexander Lakhin <[email protected]>
To: Alexander Korotkov <[email protected]>
To: Daniel Gustafsson <[email protected]>
Cc: Daniel Shelepanov <[email protected]>
Cc: Nikita Malakhov <[email protected]>
Cc: Michael Paquier <[email protected]>
Cc: Robert Haas <[email protected]>
Cc: Tom Lane <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Cc: Andres Freund <[email protected]>
Subject: Re: collect_corrupt_items_vacuum.patch
Date: Tue, 7 Nov 2023 14:00:00 +0300
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAPpHfdu6c=dQHq4r_xXbcAu0T4P28wv6x7QTwBZa7idv6nZsrA@mail.gmail.com>
References: <[email protected]>
	<CA+TgmoZtw7yNZogHFrgatHnvc2rOX9hoRRq=GtUBZx9mxh86Vg@mail.gmail.com>
	<[email protected]>
	<CA+TgmoYmGN6ivwioc4YaEQqGOS2oH=0jDYMVghb6Vd5hx6bwtA@mail.gmail.com>
	<[email protected]>
	<CAN-LCVMLrup6=6yGxrMVThPrNYpa4km7Nn420PaFVo3sRjxpbw@mail.gmail.com>
	<CAN-LCVMWxCvraFrGWxMtvkqrkSYZhCoOixR8a2sOjSCgG_pgrw@mail.gmail.com>
	<[email protected]>
	<CAPpHfdu6c=dQHq4r_xXbcAu0T4P28wv6x7QTwBZa7idv6nZsrA@mail.gmail.com>

Hi Alexander,

06.11.2023 12:30, Alexander Korotkov wrote:
> Surely these would significantly sacrifice accuracy. But we have to do
> so in order to avoid reporting false errors.
>

I've reduced the dirty reproducer Daniel Shelepanov posted initially
to the following:
numdbs=10
for ((d=1;d<=$numdbs;d++)); do
   createdb db$d
   psql db$d -c "create extension pg_visibility"
done

for ((i=1;i<=300;i++)); do
echo "iteration $i"
for ((d=1;d<=$numdbs;d++)); do
(
echo "
create table vacuum_test as select 42 i;
vacuum (disable_page_skipping) vacuum_test;
select * from pg_check_visible('vacuum_test');
" | psql db$d -a -q >psql-$d.log 2>&1
) &
done
wait

res=0
for ((d=1;d<=$numdbs;d++)); do
grep -q '0 rows' psql-$d.log || { echo "Error condition in psql-$d.log:"; cat psql-$d.log; res=1; break; }
psql db$d -q -c "drop table vacuum_test"
done
[ $res == 0 ] || break;
done

It looks like the v2 patch doesn't fix the original issue. Maybe I miss
something, but with the patch applied, I see the failure immediately,
though without the patch several iterations are needed to get it.

Best regards,
Alexander






view thread (15+ 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: collect_corrupt_items_vacuum.patch
  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