mirror of
https://github.com/postgres/postgres.git
synced 2025-12-09 02:08:45 +03:00
amcheck: Fix snapshot usage in bt_index_parent_check
We were using SnapshotAny to do some index checks, but that's wrong and
causes spurious errors when used on indexes created by CREATE INDEX
CONCURRENTLY. Fix it to use an MVCC snapshot, and add a test for it.
This problem came in with commit 5ae2087202, which introduced
uniqueness check. Backpatch to 17.
Author: Mihail Nikalayeu <mihailnikalayeu@gmail.com>
Reviewed-by: Andrey Borodin <x4mmm@yandex-team.ru>
Backpatch-through: 17
Discussion: https://postgr.es/m/CANtu0ojmVd27fEhfpST7RG2KZvwkX=dMyKUqg0KM87FkOSdz8Q@mail.gmail.com
This commit is contained in:
@@ -382,7 +382,7 @@ SET client_min_messages = DEBUG1;
|
||||
verification functions is <literal>true</literal>, an additional
|
||||
phase of verification is performed against the table associated with
|
||||
the target index relation. This consists of a <quote>dummy</quote>
|
||||
<command>CREATE INDEX</command> operation, which checks for the
|
||||
<command>CREATE INDEX CONCURRENTLY</command> operation, which checks for the
|
||||
presence of all hypothetical new index tuples against a temporary,
|
||||
in-memory summarizing structure (this is built when needed during
|
||||
the basic first phase of verification). The summarizing structure
|
||||
|
||||
Reference in New Issue
Block a user