On Sun, Nov 27, 2022 at 1:29 PM Andrey Borodin <amborodi...@gmail.com> wrote: > > GiST verification checks only one invariant that can be verified if > page locks acquired the same way as page split does. > GIN does not require ShareLock because it does not check cross-level > invariants. >
I was wrong. GIN check does similar gin_refind_parent() to lock pages in bottom-up manner and truly verify downlink-child_page invariant. Here's v17. The only difference is that I added progress reporting to GiST verification. I still did not implement heapallindexed for GIN. Existence of pending lists makes this just too difficult for a weekend coding project :( Thank you! Best regards, Andrey Borodin.
v17-0002-Add-gist_index_parent_check-function-to-verify-G.patch
Description: Binary data
v17-0003-Add-gin_index_parent_check-to-verify-GIN-index.patch
Description: Binary data
v17-0001-Refactor-amcheck-to-extract-common-locking-routi.patch
Description: Binary data