Phase 3 of read-only-plans project: ExecInitExpr now builds expression

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 3a4f7dde16ad81b2319b9a4924a6023710a2fefd
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2002-12-13T19:46:01Z
Releases: 7.4.1
Phase 3 of read-only-plans project: ExecInitExpr now builds expression
execution state trees, and ExecEvalExpr takes an expression state tree
not an expression plan tree.  The plan tree is now read-only as far as
the executor is concerned.  Next step is to begin actually exploiting
this property.

Files

PathChange+/−
contrib/intagg/int_aggregate.c modified +0 −1
src/backend/bootstrap/bootstrap.c modified +4 −1
src/backend/catalog/index.c modified +8 −2
src/backend/commands/copy.c modified +14 −12
src/backend/commands/explain.c modified +9 −11
src/backend/commands/indexcmds.c modified +4 −1
src/backend/commands/prepare.c modified +9 −3
src/backend/commands/tablecmds.c modified +7 −2
src/backend/commands/typecmds.c modified +8 −6
src/backend/executor/execAmi.c modified +6 −4
src/backend/executor/execMain.c modified +3 −2
src/backend/executor/execProcnode.c modified +14 −11
src/backend/executor/execQual.c modified +400 −258
src/backend/executor/execTuples.c modified +2 −1
src/backend/executor/execUtils.c modified +5 −5
src/backend/executor/nodeAgg.c modified +13 −9
src/backend/executor/nodeFunctionscan.c modified +5 −4
src/backend/executor/nodeGroup.c modified +3 −3
src/backend/executor/nodeHash.c modified +6 −5
src/backend/executor/nodeHashjoin.c modified +20 −11
src/backend/executor/nodeIndexscan.c modified +31 −97
src/backend/executor/nodeLimit.c modified +3 −3
src/backend/executor/nodeMergejoin.c modified +27 −17
src/backend/executor/nodeNestloop.c modified +4 −4
src/backend/executor/nodeResult.c modified +4 −4
src/backend/executor/nodeSeqscan.c modified +3 −3
src/backend/executor/nodeSubplan.c modified +44 −51
src/backend/executor/nodeSubqueryscan.c modified +3 −3
src/backend/executor/nodeTidscan.c modified +7 −4
src/backend/nodes/copyfuncs.c modified +1 −11
src/backend/nodes/nodeFuncs.c modified +1 −2
src/backend/nodes/outfuncs.c modified +1 −3
src/backend/nodes/readfuncs.c modified +3 −8
src/backend/optimizer/path/indxpath.c modified +5 −3
src/backend/optimizer/util/clauses.c modified +17 −4
src/backend/parser/analyze.c modified +1 −4
src/backend/utils/adt/sets.c modified +21 −17
src/backend/utils/cache/fcache.c deleted +0 −53
src/backend/utils/cache/Makefile modified +2 −3
src/include/executor/executor.h modified +10 −9
src/include/executor/nodeSubplan.h modified +8 −7
src/include/executor/spi.h modified +1 −2
src/include/nodes/execnodes.h modified +195 −30
src/include/nodes/nodes.h modified +23 −7
src/include/nodes/params.h modified +4 −4
src/include/nodes/primnodes.h modified +1 −13
src/include/utils/fcache.h deleted +0 −70
src/pl/plpgsql/src/pl_exec.c modified +11 −5
src/pl/plpgsql/src/plpgsql.h modified +2 −2