Thread: pgsql: nbtree VACUUM: cope with topparent inconsistencies.
nbtree VACUUM: cope with topparent inconsistencies. Avoid "right sibling %u of block %u is not next child" errors when vacuuming a corrupt nbtree index. Just LOG the issue and press on. That way VACUUM will have a decent chance of finishing off all required processing for the index (and for the table as a whole). This is similar to recent work from commit 5abff197, as well as work from commit 5b861baa (later backpatched as commit 43e409ce), which taught nbtree VACUUM to keep going when its "re-find" check fails. The hardening added by this commit takes place directly after the "re-find" check, right before the critical section for the first stage of page deletion. Author: Peter Geoghegan <pg@bowt.ie> Discussion: https://postgr.es/m/CAH2-Wz=dayg0vjs4+er84TS9ami=csdzjpuiCGbEw=idhwqhzQ@mail.gmail.com Backpatch: 11- (all supported versions). Branch ------ REL_13_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/b6311824f011d3ba03a6c5c1c0bbd7f31e27dbc6 Modified Files -------------- src/backend/access/nbtree/nbtpage.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-)