aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeIndexscan.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2004-02-28 19:46:06 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2004-02-28 19:46:06 +0000
commit9be7ea088ce155301264f3fe9b0a95673a7b2566 (patch)
tree1b1efe9ce4bb012f4b9c141bc54f37ea9f93e080 /src/backend/executor/nodeIndexscan.c
parent303f4649a2c962c1879cf54ec932f5684765597d (diff)
downloadpostgresql-9be7ea088ce155301264f3fe9b0a95673a7b2566.tar.gz
postgresql-9be7ea088ce155301264f3fe9b0a95673a7b2566.zip
Remove unneeded indxqual field in IndexScanState, and the useless work
spent initializing it during indexscan startup.
Diffstat (limited to 'src/backend/executor/nodeIndexscan.c')
-rw-r--r--src/backend/executor/nodeIndexscan.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/backend/executor/nodeIndexscan.c b/src/backend/executor/nodeIndexscan.c
index b6d6e5ac21e..347096a20eb 100644
--- a/src/backend/executor/nodeIndexscan.c
+++ b/src/backend/executor/nodeIndexscan.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/executor/nodeIndexscan.c,v 1.91 2004/02/03 17:34:02 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/executor/nodeIndexscan.c,v 1.92 2004/02/28 19:46:05 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -669,6 +669,12 @@ ExecInitIndexScan(IndexScan *node, EState *estate)
/*
* initialize child expressions
+ *
+ * Note: we don't initialize all of the indxqual expression, only the
+ * sub-parts corresponding to runtime keys (see below). The indxqualorig
+ * expression is always initialized even though it will only be used in
+ * some uncommon cases --- would be nice to improve that. (Problem is
+ * that any SubPlans present in the expression must be found now...)
*/
indexstate->ss.ps.targetlist = (List *)
ExecInitExpr((Expr *) node->scan.plan.targetlist,
@@ -676,9 +682,6 @@ ExecInitIndexScan(IndexScan *node, EState *estate)
indexstate->ss.ps.qual = (List *)
ExecInitExpr((Expr *) node->scan.plan.qual,
(PlanState *) indexstate);
- indexstate->indxqual = (List *)
- ExecInitExpr((Expr *) node->indxqual,
- (PlanState *) indexstate);
indexstate->indxqualorig = (List *)
ExecInitExpr((Expr *) node->indxqualorig,
(PlanState *) indexstate);