Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data - Mailing list pgsql-bugs

From Noah Misch
Subject Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data
Date
Msg-id 20210814221328.GA146778@rfd.leadboat.com
Whole thread Raw
In response to Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data  (Noah Misch <noah@leadboat.com>)
Responses Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data  (Noah Misch <noah@leadboat.com>)
List pgsql-bugs
On Sun, Aug 08, 2021 at 09:37:52AM -0700, Noah Misch wrote:
> On Sun, Aug 08, 2021 at 04:31:07PM +0500, Andrey Borodin wrote:
> > Step 1. Test for CIC with regular transactions.
> > Step 2. Fix
> > Step 3. Test for CIC with 2PC
> > Step 4. Part of the fix that I'm sure about
> > Step 5. Dubious part of fix...

When I applied all five to commit b33259e^ (shortly before the PostgresNode
compatibility break) and ran your tests in a loop, I got more 2PC "lacks
matching index tuple" within one minute.  Here's how I ran the tests:

  make -j20 && while make -C contrib/amcheck check REGRESS= PROVE_FLAGS=--timer PROVE_TESTS='t/002_cic.pl
t/003_cic_2pc.pl'NO_TEMP_INSTALL=1; do date; done
 

Do you see failures with that loop?  If so, can you diagnose them?  (So far,
I've not seen a failure from the 1PC test.)

On Thu, Jul 29, 2021 at 10:25:48PM -0400, Noah Misch wrote:
> I haven't checked whether other inval message types have the same hazard.

I will look into this next.  (It probably doesn't explain 2PC failures.)



pgsql-bugs by date:

Previous
From: David Christensen
Date:
Subject: Re: BUG #17141: SELECT LIMIT WITH TIES FOR UPDATE SKIP LOCKED returns wrong number of rows
Next
From: Noah Misch
Date:
Subject: Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data