From: | Peter Geoghegan <pg(at)bowt(dot)ie> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Backpatch nbtree page deletion hardening. |
Date: | 2022-09-05 18:21:19 |
Message-ID: | E1oVGil-001ar6-CW@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Backpatch nbtree page deletion hardening.
Postgres 14 commit 5b861baa taught nbtree VACUUM to tolerate buggy
opclasses. VACUUM's inability to locate a to-be-deleted page's downlink
in the parent page was logged instead of throwing an error. VACUUM
could just press on with vacuuming the index, and vacuuming the table as
a whole.
There are now anecdotal reports of this error causing problems that were
much more disruptive than the underlying index corruption ever could be.
Anything that makes VACUUM unable to make forward progress against one
table/index ultimately risks making the system enter xidStopLimit mode.
There is no good reason to take any chances here, so backpatch the
hardening commit.
Author: Peter Geoghegan <pg(at)bowt(dot)ie>
Discussion: https://postgr.es/m/CAH2-Wzm9HR6Pow=t-iQa57zT8qmX6_M4h14F-pTtb=xFDW5FBA@mail.gmail.com
Backpatch: 10-13 (all supported versions that lacked the hardening)
Branch
------
REL_10_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/cfe41f9766a1dee058932fcab93ddade004e61da
Modified Files
--------------
src/backend/access/nbtree/nbtpage.c | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2022-09-05 21:13:34 | pgsql: Stamp 15beta4. |
Previous Message | Peter Eisentraut | 2022-09-05 12:46:58 | pgsql: Translation updates |