Re: BUG #17485: Records missing from Primary Key index when doing REINDEX INDEX CONCURRENTLY
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Andrey Borodin <x4mmm@yandex-team.ru>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>, Петър Славов <pet.slavov@gmail.com>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2022-05-24T01:20:02Z
Lists: pgsql-bugs
On Mon, May 23, 2022 at 03:49:02PM +0500, Andrey Borodin wrote: > I've transformed Peter's test into TAP test that runs ~20 seconds > and reliably reproduces problem on my laptop. Thanks for the TAP test. That's nice. It actually passes here, reliably. > And I observe that commenting out condition in following code fixes the test. > //if (!(statusFlags & PROC_IN_SAFE_IC)) > h->data_oldest_nonremovable = > TransactionIdOlder(h->data_oldest_nonremovable, xmin); Well, by doing so, I think that you are just making the CIC/REINDEX wait again until the index is safe to use, but we want to skip this wait as of the optimization done in d9d0762. -- Michael
Commits
-
Revert changes to CONCURRENTLY that "sped up" Xmin advance
- e28bb8851969 15.0 landed
- 042b584c7f7d 14.4 landed
-
Fix possible HOT corruption when RECENTLY_DEAD changes to DEAD while pruning.
- 18b87b201f73 15.0 cited