pgsql: Make CLUSTER lock the old table's toast table before copying dat

Started by Tom Laneabout 15 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Make CLUSTER lock the old table's toast table before copying data.

We must lock out autovacuuming of the old toast table before computing the
OldestXmin horizon we will use. Otherwise, autovacuum could start on the
toast table later, compute a later OldestXmin horizon, and remove as DEAD
toast tuples that we still need (because we think their parent tuples are
only RECENTLY_DEAD). Per further thought about bug #5998.

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/fb69fd176aaa8eab0315c4f891297c03c0b5d825

Modified Files
--------------
src/backend/commands/cluster.c | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)