Re: BUG #17485: Records missing from Primary Key index when doing REINDEX INDEX CONCURRENTLY
x4mmm@yandex-team.ru
From: Andrey Borodin <x4mmm@yandex-team.ru>
To: Andres Freund <andres@anarazel.de>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>, Peter Geoghegan <pg@bowt.ie>, Michael Paquier <michael@paquier.xyz>, Петър Славов <pet.slavov@gmail.com>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2022-05-24T18:38:07Z
Lists: pgsql-bugs
> On 24 May 2022, at 23:15, Andres Freund <andres@anarazel.de> wrote: > > With fsync=on, it's much harder to reproduce. That exaplains why it's easier to reproduce on MacOS: it seem it ignores fsync. > On 24 May 2022, at 23:15, Andres Freund <andres@anarazel.de> wrote: > > I suspect the problem might be related to pruning done during the validation > scan. Once PROC_IN_SAFE_IC is set, the backend itself will not preserve tids > its own snapshot might need. Which will wreak havoc during the validation > scan. I observe that removing PROC_IN_SAFE_IC for index_validate() fixes tests. But why it's not a problem for index_build() scan? And I do not understand why it's a problem that tuple is pruned during the scan... How does this "wreak havoc" happen? Best regards, Andrey Borodin.
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