aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/path/allpaths.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2007-02-19 07:03:34 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2007-02-19 07:03:34 +0000
commit7c5e5439d2a64ee82d54be2e064a4bb4602bad30 (patch)
treeda8d85b50e284413823da3bc98975c03278cb582 /src/backend/optimizer/path/allpaths.c
parent90c301aaa9377d385d00d93462f3f656ada8981e (diff)
downloadpostgresql-7c5e5439d2a64ee82d54be2e064a4bb4602bad30.tar.gz
postgresql-7c5e5439d2a64ee82d54be2e064a4bb4602bad30.zip
Get rid of some old and crufty global variables in the planner. When
this code was last gone over, there wasn't really any alternative to globals because we didn't have the PlannerInfo struct being passed all through the planner code. Now that we do, we can restructure things to avoid non-reentrancy. I'm fooling with this because otherwise I'd have had to add another global variable for the planned compact range table list.
Diffstat (limited to 'src/backend/optimizer/path/allpaths.c')
-rw-r--r--src/backend/optimizer/path/allpaths.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c
index 43891a18459..1cb1d86be1b 100644
--- a/src/backend/optimizer/path/allpaths.c
+++ b/src/backend/optimizer/path/allpaths.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.158 2007/01/28 18:50:40 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.159 2007/02/19 07:03:28 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -517,7 +517,9 @@ set_subquery_pathlist(PlannerInfo *root, RelOptInfo *rel,
tuple_fraction = root->tuple_fraction;
/* Generate the plan for the subquery */
- rel->subplan = subquery_planner(subquery, tuple_fraction,
+ rel->subplan = subquery_planner(root->glob, subquery,
+ root->query_level + 1,
+ tuple_fraction,
&subquery_pathkeys);
/* Copy number of output rows from subplan */