pgsql: Improve checking of child pages in contrib/amcheck. - Mailing list pgsql-committers

From Alexander Korotkov
Subject pgsql: Improve checking of child pages in contrib/amcheck.
Date
Msg-id E1jBxEs-0006Ek-9S@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Improve checking of child pages in contrib/amcheck.

This commit eliminates lossiness in check for missing parent downlinks in
B-tree.  Instead of collecting lossy bitmap, we check for missing downlinks
while visiting child pages referenced by downlinks of target level.  We
traverse from previous child page to the subsequent child page by right links.
Intermediate pages are candidates to have lost parent downlinks.

Also this commit introduces matching of child high key to the pivot key of
it's parent.

Discussion: https://postgr.es/m/CAPpHfduoF-c4RhOyOm%3D4-Y367%2B8txq9Q6iM_ty0OYc8si1Abww%40mail.gmail.com
Author: Alexander Korotkov
Reviewed-by: Peter Geoghegan

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d114cc538715e14d29d6de8b6ea1a1d5d3e0edb4

Modified Files
--------------
contrib/amcheck/verify_nbtree.c | 582 +++++++++++++++++++++++++++++++---------
doc/src/sgml/amcheck.sgml       |   6 +-
2 files changed, 465 insertions(+), 123 deletions(-)


pgsql-committers by date:

Previous
From: Peter Geoghegan
Date:
Subject: pgsql: Remove stray parenthesis in nbtree.h.
Next
From: Peter Eisentraut
Date:
Subject: pgsql: Remove HAVE_WORKING_LINK