diff options
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/optimizer/prep.h | 6 | ||||
-rw-r--r-- | src/include/optimizer/subselect.h | 12 |
2 files changed, 11 insertions, 7 deletions
diff --git a/src/include/optimizer/prep.h b/src/include/optimizer/prep.h index 1a90a13208c..9326623b91a 100644 --- a/src/include/optimizer/prep.h +++ b/src/include/optimizer/prep.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/optimizer/prep.h,v 1.61 2008/08/14 18:48:00 tgl Exp $ + * $PostgreSQL: pgsql/src/include/optimizer/prep.h,v 1.62 2008/08/17 01:20:00 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -21,12 +21,12 @@ /* * prototypes for prepjointree.c */ -extern Node *pull_up_sublinks(PlannerInfo *root, Node *node); +extern void pull_up_sublinks(PlannerInfo *root); extern void inline_set_returning_functions(PlannerInfo *root); extern Node *pull_up_subqueries(PlannerInfo *root, Node *jtnode, bool below_outer_join, bool append_rel_member); extern void reduce_outer_joins(PlannerInfo *root); -extern Relids get_relids_in_jointree(Node *jtnode); +extern Relids get_relids_in_jointree(Node *jtnode, bool include_joins); extern Relids get_relids_for_join(PlannerInfo *root, int joinrelid); /* diff --git a/src/include/optimizer/subselect.h b/src/include/optimizer/subselect.h index b9bd76b07ff..97e230a2dbf 100644 --- a/src/include/optimizer/subselect.h +++ b/src/include/optimizer/subselect.h @@ -5,7 +5,7 @@ * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/optimizer/subselect.h,v 1.32 2008/08/14 18:48:00 tgl Exp $ + * $PostgreSQL: pgsql/src/include/optimizer/subselect.h,v 1.33 2008/08/17 01:20:00 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -15,9 +15,13 @@ #include "nodes/plannodes.h" #include "nodes/relation.h" -extern Node *convert_ANY_sublink_to_join(PlannerInfo *root, SubLink *sublink); -extern Node *convert_EXISTS_sublink_to_join(PlannerInfo *root, - SubLink *sublink, bool under_not); +extern bool convert_ANY_sublink_to_join(PlannerInfo *root, SubLink *sublink, + Relids available_rels, + Node **new_qual, List **fromlist); +extern bool convert_EXISTS_sublink_to_join(PlannerInfo *root, SubLink *sublink, + bool under_not, + Relids available_rels, + Node **new_qual, List **fromlist); extern Node *SS_replace_correlation_vars(PlannerInfo *root, Node *expr); extern Node *SS_process_sublinks(PlannerInfo *root, Node *expr, bool isQual); extern void SS_finalize_plan(PlannerInfo *root, Plan *plan, |