diff options
| author | Heikki Linnakangas | 2025-12-02 19:10:51 +0000 |
|---|---|---|
| committer | Heikki Linnakangas | 2025-12-02 19:10:51 +0000 |
| commit | 6c05ef5729c04d47400660cd994305bc44a3c757 (patch) | |
| tree | b4c69fd04004c212b5ba6e88dbcd4ebd58140923 /contrib/amcheck | |
| parent | 1e4e5783e7d77adb283ae7fa1ac99b0910a041b2 (diff) | |
Fix amcheck's handling of incomplete root splits in B-tree
When the root page is being split, it's normal that root page
according to the metapage is not marked BTP_ROOT. Fix bogus error in
amcheck about that case.
Reviewed-by: Peter Geoghegan <pg@bowt.ie>
Discussion: https://www.postgresql.org/message-id/abd65090-5336-42cc-b768-2bdd66738404@iki.fi
Backpatch-through: 14
Diffstat (limited to 'contrib/amcheck')
| -rw-r--r-- | contrib/amcheck/verify_nbtree.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/amcheck/verify_nbtree.c b/contrib/amcheck/verify_nbtree.c index 0949c88983a..f26c20b59aa 100644 --- a/contrib/amcheck/verify_nbtree.c +++ b/contrib/amcheck/verify_nbtree.c @@ -721,7 +721,7 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level) errmsg("block %u is not leftmost in index \"%s\"", current, RelationGetRelationName(state->rel)))); - if (level.istruerootlevel && !P_ISROOT(opaque)) + if (level.istruerootlevel && (!P_ISROOT(opaque) && !P_INCOMPLETE_SPLIT(opaque))) ereport(ERROR, (errcode(ERRCODE_INDEX_CORRUPTED), errmsg("block %u is not true root in index \"%s\"", |
