Skip site navigation (1) Skip section navigation (2)

pgsql: Fix "failed to re-find parent key" btree VACUUM failure by

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix "failed to re-find parent key" btree VACUUM failure by
Date: 2006-11-01 19:43:17
Message-ID: 20061101194317.CF5E69FB571@postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Fix "failed to re-find parent key" btree VACUUM failure by revising page
deletion code to avoid the case where an upper-level btree page remains "half
dead" for a significant period of time, and to block insertions into a key
range that is in process of being re-assigned to the right sibling of the
deleted page's parent.  This prevents the scenario reported by Ed L. wherein
index keys could become out-of-order in the grandparent index level.

Since this is a moderately invasive fix, I'm applying it only to HEAD.
The bug exists back to 7.4, but the back branches will get a different patch.

Modified Files:
--------------
    pgsql/src/backend/access/nbtree:
        README (r1.13 -> r1.14)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/README.diff?r1=1.13&r2=1.14)
        nbtinsert.c (r1.144 -> r1.145)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtinsert.c.diff?r1=1.144&r2=1.145)
        nbtpage.c (r1.100 -> r1.101)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtpage.c.diff?r1=1.100&r2=1.101)
        nbtree.c (r1.152 -> r1.153)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtree.c.diff?r1=1.152&r2=1.153)
        nbtxlog.c (r1.38 -> r1.39)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtxlog.c.diff?r1=1.38&r2=1.39)
    pgsql/src/include/access:
        nbtree.h (r1.105 -> r1.106)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/nbtree.h.diff?r1=1.105&r2=1.106)

pgsql-committers by date

Next:From: Tom LaneDate: 2006-11-01 19:50:03
Subject: pgsql: Fix "failed to re-find parent key" btree VACUUM failure by
Previous:From: Tom LaneDate: 2006-11-01 15:59:31
Subject: pgsql: pg_restore failed on tar-format archives if they contained large

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group