summaryrefslogtreecommitdiff
path: root/src/include/executor/nodeModifyTable.h
diff options
context:
space:
mode:
authorHeikki Linnakangas2020-10-14 08:41:40 +0000
committerHeikki Linnakangas2020-10-14 08:41:40 +0000
commita04daa97a4339c38e304cd6164d37da540d665a8 (patch)
treefe77d311bc7aa4ad87db41730a3ba2cb7d1a5313 /src/include/executor/nodeModifyTable.h
parent178f2d560dde05b356ab2f586b8bc62514f454aa (diff)
Remove es_result_relation_info from EState.
Maintaining 'es_result_relation_info' correctly at all times has become cumbersome, especially with partitioning where each partition gets its own result relation info. Having to set and reset it across arbitrary operations has caused bugs in the past. This changes all the places that used 'es_result_relation_info', to receive the currently active ResultRelInfo via function parameters instead. Author: Amit Langote Discussion: https://www.postgresql.org/message-id/CA%2BHiwqGEmiib8FLiHMhKB%2BCH5dRgHSLc5N5wnvc4kym%2BZYpQEQ%40mail.gmail.com
Diffstat (limited to 'src/include/executor/nodeModifyTable.h')
-rw-r--r--src/include/executor/nodeModifyTable.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/include/executor/nodeModifyTable.h b/src/include/executor/nodeModifyTable.h
index 4ec4ebdabc1..46a2dc95118 100644
--- a/src/include/executor/nodeModifyTable.h
+++ b/src/include/executor/nodeModifyTable.h
@@ -15,7 +15,9 @@
#include "nodes/execnodes.h"
-extern void ExecComputeStoredGenerated(EState *estate, TupleTableSlot *slot, CmdType cmdtype);
+extern void ExecComputeStoredGenerated(ResultRelInfo *resultRelInfo,
+ EState *estate, TupleTableSlot *slot,
+ CmdType cmdtype);
extern ModifyTableState *ExecInitModifyTable(ModifyTable *node, EState *estate, int eflags);
extern void ExecEndModifyTable(ModifyTableState *node);