Alvaro Herrera <alvherre@commandprompt.com> writes:
> Rats. I guess this is due to the two-pass nature of some algorithm.
> (Dropping owned by u1 cascade drops the view too, and then when dropping
> owned by u2, it tries to find the view and the cache lookup fails).
Actually, on looking closer, the problem is that recursiveDeletion fails
to pass alreadyDeleted down to (and through) deleteDependentObjects.
So the cascaded delete doesn't get reported back to
performMultipleDeletions, and it doesn't know to skip the view when it
gets to it. So this is clearly a bug, and seemingly not so hard to fix.
regards, tom lane