diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-06-05 22:32:58 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-06-05 22:32:58 +0000 |
| commit | 9ab4d98168407c3436d3f0e02d32720b0d9075a0 (patch) | |
| tree | 3572d316a54a99512277ead2ad757032998b2839 /src/include/optimizer/restrictinfo.h | |
| parent | 22dbd540478517ff6c55381ae7ce07a3a2e64474 (diff) | |
Remove planner's private fields from Query struct, and put them into
a new PlannerInfo struct, which is passed around instead of the bare
Query in all the planning code. This commit is essentially just a
code-beautification exercise, but it does open the door to making
larger changes to the planner data structures without having to muck
with the widely-known Query struct.
Diffstat (limited to 'src/include/optimizer/restrictinfo.h')
| -rw-r--r-- | src/include/optimizer/restrictinfo.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/include/optimizer/restrictinfo.h b/src/include/optimizer/restrictinfo.h index 3760a65669b..4fa6ace6aee 100644 --- a/src/include/optimizer/restrictinfo.h +++ b/src/include/optimizer/restrictinfo.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/optimizer/restrictinfo.h,v 1.29 2005/04/25 02:14:48 tgl Exp $ + * $PostgreSQL: pgsql/src/include/optimizer/restrictinfo.h,v 1.30 2005/06/05 22:32:58 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -16,6 +16,7 @@ #include "nodes/relation.h" + extern RestrictInfo *make_restrictinfo(Expr *clause, bool is_pushed_down, bool valid_everywhere); extern List *make_restrictinfo_from_bitmapqual(Path *bitmapqual, @@ -25,10 +26,10 @@ extern bool restriction_is_or_clause(RestrictInfo *restrictinfo); extern List *get_actual_clauses(List *restrictinfo_list); extern void get_actual_join_clauses(List *restrictinfo_list, List **joinquals, List **otherquals); -extern List *remove_redundant_join_clauses(Query *root, +extern List *remove_redundant_join_clauses(PlannerInfo *root, List *restrictinfo_list, bool isouterjoin); -extern List *select_nonredundant_join_clauses(Query *root, +extern List *select_nonredundant_join_clauses(PlannerInfo *root, List *restrictinfo_list, List *reference_list, bool isouterjoin); |
