On Thu, 3 Aug 2000, Tom Lane wrote:
> Accordingly, this patch is not needed anymore in current sources, though
> it'd still be the most convenient fix for 7.0.* series if anyone is
> concerned enough to apply it.
Yeah, actually, a friend of mine ran into this recently with incorrect
create constraint trigger statements so I already was going to send a
patch to him, then it got mentioned on -bugs.
> A possibly more important issue: why are the RI triggers opening the
> referenced rel with NoLock anyway? Doesn't that leave you open to
> someone deleting the referenced rel out from under you while you are
> working with it? Seems like at minimum you should grab AccessShareLock.
That's a good point. To be honest, I don't really know why it's not
grabbing a lock (Jan?). As a general newbie question for such things,
what happens to your relation pointer if it were to be deleted out
from under? I figure that if it gets to the actual query, it will fail
(unless someone were to create a table with that name in the meantime -
ouch...)