Dimitri Fontaine <dimitri@2ndQuadrant.fr> writes:
> We can easily enough copy the parse tree and do another round of parse
> analysis on it only when some command triggers are going to get called.
> Is the cost of doing so acceptable?
It's not the costs I'm worried about so much as the side effects ---
locks and so forth. Also, things like assignment of specific names
for indexes and sequences seem rather problematic. In the worst case
the trigger could run seeing "foo_bar_idx1" as the name of an index
to be created, and then when the action actually happens, the name
turns out to be "foo_bar_idx2" because someone else took the first name
meanwhile.
As I said, I think this suggests that you're trying to do the triggers
in the wrong place.
regards, tom lane