mirror of
https://github.com/postgres/postgres.git
synced 2025-11-29 23:43:17 +03:00
Change set_plan_references and join_references to take an rtable List
rather than a Query node; this allows set_plan_references to recurse into subplans correctly. Fixes core dump on full outer joins in subplans. Also, invoke preprocess_expression on function RTEs' function expressions. This seems to fix the planner's problems with outer-level Vars in function RTEs.
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/plan/initsplan.c,v 1.71 2002/05/17 22:35:12 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/plan/initsplan.c,v 1.72 2002/05/18 02:25:49 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -177,7 +177,7 @@ add_vars_to_targetlist(Query *root, List *vars)
|
||||
List *varsused;
|
||||
|
||||
expansion = flatten_join_alias_vars((Node *) var,
|
||||
root, true);
|
||||
root->rtable, true);
|
||||
varsused = pull_var_clause(expansion, false);
|
||||
add_vars_to_targetlist(root, varsused);
|
||||
freeList(varsused);
|
||||
|
||||
Reference in New Issue
Block a user