The postgresql documentation claims that "on insert" rules are executed after the insert. This is not happening for me. I have a rule that is being executed even though the insert should have failed due to a foreign key check.
The rule does an insert that is failing, and the whole insert fails. So in this case it's not a huge problem. But I get a completely useless error message, and as far as I can tell there is no way to determine exactly what caused the failure (except for the fact that I happen to know what rule can cause that error). I'd like the person inserting a row that violates the foreign key check to get a useful error message. Is this a documentation bug? How can I get the desired behavior? ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend