diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-25 21:58:00 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-25 21:58:00 +0000 |
| commit | adb1a6e95b2087e44c845edc15c28a87f5ba7ac1 (patch) | |
| tree | 262134a0f4ec11fe71f1963d4531b71f2534aea3 /src/backend/executor/spi.c | |
| parent | 08890b407e976e4871f2024ed5a3071d0fa510a6 (diff) | |
| download | postgresql-adb1a6e95b2087e44c845edc15c28a87f5ba7ac1.tar.gz | |
Improve EXPLAIN ANALYZE to show the time spent in each trigger when
executing a statement that fires triggers. Formerly this time was
included in "Total runtime" but not otherwise accounted for.
As a side benefit, we avoid re-opening relations when firing non-deferred
AFTER triggers, because the trigger code can re-use the main executor's
ResultRelInfo data structure.
Diffstat (limited to 'src/backend/executor/spi.c')
| -rw-r--r-- | src/backend/executor/spi.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/backend/executor/spi.c b/src/backend/executor/spi.c index d26e306850..de119ec776 100644 --- a/src/backend/executor/spi.c +++ b/src/backend/executor/spi.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/executor/spi.c,v 1.135 2005/03/16 21:38:08 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/executor/spi.c,v 1.136 2005/03/25 21:57:58 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1546,10 +1546,10 @@ _SPI_pquery(QueryDesc *queryDesc, int tcount) elog(ERROR, "consistency check on SPI tuple count failed"); } - ExecutorEnd(queryDesc); - /* Take care of any queued AFTER triggers */ - AfterTriggerEndQuery(); + AfterTriggerEndQuery(queryDesc->estate); + + ExecutorEnd(queryDesc); if (queryDesc->dest->mydest == SPI) { |
