From 4a6e3a6a9fa18e01d6ae65015e55a42f36030d0d Mon Sep 17 00:00:00 2001 From: "Vadim B. Mikheev" Date: Fri, 13 Feb 1998 03:37:04 +0000 Subject: Old planner() becomes union_planner(); new planner() makes initialization of some global variables to support subselects and calls union_planner(). Calls to SS_replace_correlation_vars() and SS_process_sublinks() in query_planner() before planning. Get rid of #ifdef INDEXSCAN_PATCH in createplan.c. --- src/backend/optimizer/plan/setrefs.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'src/backend/optimizer/plan/setrefs.c') diff --git a/src/backend/optimizer/plan/setrefs.c b/src/backend/optimizer/plan/setrefs.c index 16fd96aae1b..fc51657b8d0 100644 --- a/src/backend/optimizer/plan/setrefs.c +++ b/src/backend/optimizer/plan/setrefs.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/setrefs.c,v 1.17 1998/02/10 04:01:13 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/setrefs.c,v 1.18 1998/02/13 03:37:02 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -405,7 +405,21 @@ replace_clause_joinvar_refs(Expr *clause, leftvar, rightvar)); } + else if (is_subplan(clause)) + { + ((Expr*) clause)->args = + replace_subclause_joinvar_refs(((Expr*) clause)->args, + outer_tlist, + inner_tlist); + ((SubPlan*) ((Expr*) clause)->oper)->sublink->oper = + replace_subclause_joinvar_refs(((SubPlan*) ((Expr*) clause)->oper)->sublink->oper, + outer_tlist, + inner_tlist); + return ((List*) clause); + } /* shouldn't reach here */ + elog (ERROR, "replace_clause_joinvar_refs: unsupported clause %d", + nodeTag (clause)); return NULL; } -- cgit v1.2.3