aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/xlogutils.c
diff options
context:
space:
mode:
authorPeter Geoghegan <pg@bowt.ie>2021-11-04 19:54:05 -0700
committerPeter Geoghegan <pg@bowt.ie>2021-11-04 19:54:05 -0700
commite7428a99a13f973549aab30c57ec8380ddda1869 (patch)
tree75b01b485fa7bb359fdb705bc9f94022a231e889 /src/backend/access/transam/xlogutils.c
parentbabbbb595d2322da095a1e6703171b3f1f2815cb (diff)
downloadpostgresql-e7428a99a13f973549aab30c57ec8380ddda1869.tar.gz
postgresql-e7428a99a13f973549aab30c57ec8380ddda1869.zip
Add hardening to catch invalid TIDs in indexes.
Add hardening to the heapam index tuple deletion path to catch TIDs in index pages that point to a heap item that index tuples should never point to. The corruption we're trying to catch here is particularly tricky to detect, since it typically involves "extra" (corrupt) index tuples, as opposed to the absence of required index tuples in the index. For example, a heap TID from an index page that turns out to point to an LP_UNUSED item in the heap page has a good chance of being caught by one of the new checks. There is a decent chance that the recently fixed parallel VACUUM bug (see commit 9bacec15) would have been caught had that particular check been in place for Postgres 14. No backpatch of this extra hardening for now, though. Author: Peter Geoghegan <pg@bowt.ie> Reviewed-By: Andres Freund <andres@anarazel.de> Discussion: https://postgr.es/m/CAH2-Wzk-4_raTzawWGaiqNvkpwDXxv3y1AQhQyUeHfkU=tFCeA@mail.gmail.com
Diffstat (limited to 'src/backend/access/transam/xlogutils.c')
0 files changed, 0 insertions, 0 deletions