diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-04-25 01:30:14 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-04-25 01:30:14 +0000 |
commit | 5b05185262fd562080ecfd675c7b3634a69851c0 (patch) | |
tree | b9a9ff51a51e72d5076d6828584b30a504335303 /src/backend/optimizer/util/pathnode.c | |
parent | 186655e9a53b62f75e57bcfc218129a6cfe8ea68 (diff) | |
download | postgresql-5b05185262fd562080ecfd675c7b3634a69851c0.tar.gz |
Remove support for OR'd indexscans internal to a single IndexScan plan
node, as this behavior is now better done as a bitmap OR indexscan.
This allows considerable simplification in nodeIndexscan.c itself as
well as several planner modules concerned with indexscan plan generation.
Also we can improve the sharing of code between regular and bitmap
indexscans, since they are now working with nigh-identical Plan nodes.
Diffstat (limited to 'src/backend/optimizer/util/pathnode.c')
-rw-r--r-- | src/backend/optimizer/util/pathnode.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/backend/optimizer/util/pathnode.c b/src/backend/optimizer/util/pathnode.c index c1736678ab..19bb36136c 100644 --- a/src/backend/optimizer/util/pathnode.c +++ b/src/backend/optimizer/util/pathnode.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/optimizer/util/pathnode.c,v 1.119 2005/04/22 21:58:31 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/optimizer/util/pathnode.c,v 1.120 2005/04/25 01:30:13 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -475,13 +475,10 @@ create_index_path(Query *root, /* Flatten the clause-groups list to produce indexclauses list */ allclauses = flatten_clausegroups_list(clause_groups); - /* - * We are making a pathnode for a single-scan indexscan; therefore, - * indexinfo etc should be single-element lists. - */ - pathnode->indexinfo = list_make1(index); - pathnode->indexclauses = list_make1(allclauses); - pathnode->indexquals = list_make1(indexquals); + /* Fill in the pathnode */ + pathnode->indexinfo = index; + pathnode->indexclauses = allclauses; + pathnode->indexquals = indexquals; pathnode->isjoininner = isjoininner; pathnode->indexscandir = indexscandir; |