Fix amcheck's handling of half-dead B-tree pages

Heikki Linnakangas <heikki.linnakangas@iki.fi>

Commit: e8ae594458a3813006af963d7547b206640762b9
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: 2025-12-02T19:15:28Z
Releases: 17.8
Fix amcheck's handling of half-dead B-tree pages

amcheck incorrectly reported the following error if there were any
half-dead pages in the index:

ERROR:  mismatch between parent key and child high key in index
"amchecktest_id_idx"

It's expected that a half-dead page does not have a downlink in the
parent level, so skip the test.

Reported-by: Konstantin Knizhnik <knizhnik@garret.ru>
Reviewed-by: Peter Geoghegan <pg@bowt.ie>
Reviewed-by: Mihail Nikalayeu <mihailnikalayeu@gmail.com>
Discussion: https://www.postgresql.org/message-id/33e39552-6a2a-46f3-8b34-3f9f8004451f@garret.ru
Backpatch-through: 14

Files

PathChange+/−
contrib/amcheck/verify_nbtree.c modified +1 −1

Discussion