diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2004-02-28 19:46:06 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2004-02-28 19:46:06 +0000 |
commit | 9be7ea088ce155301264f3fe9b0a95673a7b2566 (patch) | |
tree | 1b1efe9ce4bb012f4b9c141bc54f37ea9f93e080 /src/backend/executor/nodeIndexscan.c | |
parent | 303f4649a2c962c1879cf54ec932f5684765597d (diff) | |
download | postgresql-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.c | 11 |
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); |