aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeProjectSet.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/executor/nodeProjectSet.c')
-rw-r--r--src/backend/executor/nodeProjectSet.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/backend/executor/nodeProjectSet.c b/src/backend/executor/nodeProjectSet.c
index ea40d61b0b0..adabfa2882d 100644
--- a/src/backend/executor/nodeProjectSet.c
+++ b/src/backend/executor/nodeProjectSet.c
@@ -339,6 +339,8 @@ ExecEndProjectSet(ProjectSetState *node)
void
ExecReScanProjectSet(ProjectSetState *node)
{
+ PlanState *outerPlan = outerPlanState(node);
+
/* Forget any incompletely-evaluated SRFs */
node->pending_srf_tuples = false;
@@ -346,6 +348,6 @@ ExecReScanProjectSet(ProjectSetState *node)
* If chgParam of subnode is not null then plan will be re-scanned by
* first ExecProcNode.
*/
- if (node->ps.lefttree->chgParam == NULL)
- ExecReScan(node->ps.lefttree);
+ if (outerPlan->chgParam == NULL)
+ ExecReScan(outerPlan);
}