Stephan Szabo <[EMAIL PROTECTED]> writes: > Yeah. I really don't understand it, but it appears to me to be explicitly > different in the spec for on delete cascade even compared to the rest of > the referential actions.
>> One problem I see is, what do we do if the BEFORE >> trigger then returns NULL (to skip the delete). The cascaded operations >> are already done. Do we have to execute the cascaded deletes in a >> subtransaction or do we disallow the skip in this case? > I think we'd have disallow skipping. Especially since skipping would > probably end up with a violated constraint. That seems to me to be a sufficient reason to not follow the spec in this respect. A BEFORE trigger should be run BEFORE anything happens, full stop. I can't think of any good reason why the spec's semantics are better. (It's not like our triggers are exactly spec-compatible anyway.) regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings