diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2007-02-27 01:11:26 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2007-02-27 01:11:26 +0000 |
| commit | c7ff7663e47fc4e295700101912f2b7dd53c1f4b (patch) | |
| tree | 13e987e4894faca0086b78568b08b79cf124e8a1 /src/include/executor/nodeSubplan.h | |
| parent | 4756ff3dca903dfc525d1c27fd00fad8ca328188 (diff) | |
| download | postgresql-c7ff7663e47fc4e295700101912f2b7dd53c1f4b.tar.gz | |
Get rid of the separate EState for subplans, and just let them share the
parent query's EState. Now that there's a single flat rangetable for both
the main plan and subplans, there's no need anymore for a separate EState,
and removing it allows cleaning up some crufty code in nodeSubplan.c and
nodeSubqueryscan.c. Should be a tad faster too, although any difference
will probably be hard to measure. This is the last bit of subsidiary
mop-up work from changing to a flat rangetable.
Diffstat (limited to 'src/include/executor/nodeSubplan.h')
| -rw-r--r-- | src/include/executor/nodeSubplan.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/include/executor/nodeSubplan.h b/src/include/executor/nodeSubplan.h index 4a0f50fa3e..ff4c7f3796 100644 --- a/src/include/executor/nodeSubplan.h +++ b/src/include/executor/nodeSubplan.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/executor/nodeSubplan.h,v 1.25 2007/01/05 22:19:54 momjian Exp $ + * $PostgreSQL: pgsql/src/include/executor/nodeSubplan.h,v 1.26 2007/02/27 01:11:26 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -16,12 +16,12 @@ #include "nodes/execnodes.h" -extern void ExecInitSubPlan(SubPlanState *node, EState *estate, int eflags); +extern SubPlanState *ExecInitSubPlan(SubPlan *subplan, PlanState *parent); extern Datum ExecSubPlan(SubPlanState *node, ExprContext *econtext, bool *isNull, ExprDoneCond *isDone); -extern void ExecEndSubPlan(SubPlanState *node); + extern void ExecReScanSetParamPlan(SubPlanState *node, PlanState *parent); extern void ExecSetParamPlan(SubPlanState *node, ExprContext *econtext); |
