Re: How to fire triggers just on "top" level DML - Mailing list pgsql-general

From Kevin Grittner
Subject Re: How to fire triggers just on "top" level DML
Date
Msg-id 4D3718080200002500039844@gw.wicourts.gov
Whole thread Raw
In response to Re: How to fire triggers just on "top" level DML  ("A.M." <agentm@themactionfaction.com>)
List pgsql-general
"A.M." <agentm@themactionfaction.com> wrote:

> If you do implement TG_DEPTH, I am curious as to what the
> difference between TG_DEPTH==34 and TG_DEPTH==35 could mean. I
> think it might cause poor coding practice in making decisions
> based off assumed trigger order execution. Since you only care to
> distinguish between depth 1 and depth 2 (and not beyond), could
> you elaborate on a use case where further trigger "depth"
> information may be useful?

Well, our current trigger engine in the Java tier keeps a count like
that and has a depth limit to protect against runaway recursion.
The only time we hit it was in purge logic, which is extremely
convoluted due to requirements of statutes, supreme court rules, and
auditor requirements.  :-/  I might just put some sort of depth
check into triggers fired during purges, to provide a more
informative message than I might otherwise get.

-Kevin

pgsql-general by date:

Previous
From: Bill Moran
Date:
Subject: Re: ERROR: index row requires 9984 bytes, maximum size is 8191
Next
From: "Kevin Grittner"
Date:
Subject: Re: How to fire triggers just on "top" level DML