diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-07-11 16:08:57 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-07-11 16:08:57 +0000 |
commit | 9f66d5273bbd1ac60c5e72d6b1add635c04e9317 (patch) | |
tree | 04692fd94d1ce4e8a6b983bd61f1de93405f265b /src/backend/access/gist/gistvacuum.c | |
parent | 51ca7bdb677319f0bb7eea9a0b468934a8fbe678 (diff) | |
download | postgresql-9f66d5273bbd1ac60c5e72d6b1add635c04e9317.tar.gz postgresql-9f66d5273bbd1ac60c5e72d6b1add635c04e9317.zip |
Fix an oversight in the original implementation of performMultipleDeletions():
the alreadyDeleted list has to be passed down through
deleteDependentObjects(), else objects that are deleted via auto/internal
dependencies don't get reported back up to performMultipleDeletions().
Depending on the visitation order, this could cause the code to try to delete
an already-deleted object, leading to strange errors in DROP OWNED (typically
"cache lookup failed for relation NNNNN" or similar). Per bug #4289.
Patch for back branches only. This code has recently been rewritten in HEAD,
and doesn't have this particular bug anymore.
Diffstat (limited to 'src/backend/access/gist/gistvacuum.c')
0 files changed, 0 insertions, 0 deletions