aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/execUtils.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-11-14 17:42:55 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-11-14 17:42:55 +0000
commit76ce39e386fdcd73c864ac1cf79cb81547e54e4f (patch)
tree93d8130de89c608cd612146b49691edf73e06412 /src/backend/executor/execUtils.c
parent08ee64ebf5e5495c3660a2c9f278a3bf3e60b853 (diff)
downloadpostgresql-76ce39e386fdcd73c864ac1cf79cb81547e54e4f.tar.gz
postgresql-76ce39e386fdcd73c864ac1cf79cb81547e54e4f.zip
Prevent ExecInsert() and ExecUpdate() from scribbling on the result tuple
slot of the topmost plan node when a trigger returns a modified tuple. These appear to be the only places where a plan node's caller did not treat the result slot as read-only, which is an assumption that nodeUnique makes as of 8.1. Fixes trigger-vs-DISTINCT bug reported by Frank van Vugt.
Diffstat (limited to 'src/backend/executor/execUtils.c')
-rw-r--r--src/backend/executor/execUtils.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/backend/executor/execUtils.c b/src/backend/executor/execUtils.c
index 05bfc08dc7d..d9bcd1cf6fe 100644
--- a/src/backend/executor/execUtils.c
+++ b/src/backend/executor/execUtils.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/executor/execUtils.c,v 1.126 2005/10/15 02:49:16 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/executor/execUtils.c,v 1.127 2005/11/14 17:42:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -187,6 +187,8 @@ CreateExecutorState(void)
estate->es_junkFilter = NULL;
+ estate->es_trig_tuple_slot = NULL;
+
estate->es_into_relation_descriptor = NULL;
estate->es_into_relation_use_wal = false;