summaryrefslogtreecommitdiff
path: root/src/include/optimizer
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2003-06-15 22:51:45 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2003-06-15 22:51:45 +0000
commitcb02610e503957d7ed9b4375537fb6275c16f1fa (patch)
tree540391048748403dc597c35b4cb662d2d4cc3494 /src/include/optimizer
parent3fb6f1347ffbfcbba48b37ea35925f6b19821bf6 (diff)
Adjust nestloop-with-inner-indexscan plan generation so that we catch
some cases of redundant clauses that were formerly not caught. We have to special-case this because the clauses involved never get attached to the same join restrictlist and so the existing logic does not notice that they are redundant.
Diffstat (limited to 'src/include/optimizer')
-rw-r--r--src/include/optimizer/restrictinfo.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/include/optimizer/restrictinfo.h b/src/include/optimizer/restrictinfo.h
index 997d4ab8c52..19c3435c3e5 100644
--- a/src/include/optimizer/restrictinfo.h
+++ b/src/include/optimizer/restrictinfo.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: restrictinfo.h,v 1.16 2002/11/24 21:52:15 tgl Exp $
+ * $Id: restrictinfo.h,v 1.17 2003/06/15 22:51:45 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -23,5 +23,9 @@ extern void get_actual_join_clauses(List *restrictinfo_list,
extern List *remove_redundant_join_clauses(Query *root,
List *restrictinfo_list,
JoinType jointype);
+extern List *select_nonredundant_join_clauses(Query *root,
+ List *restrictinfo_list,
+ List *reference_list,
+ JoinType jointype);
#endif /* RESTRICTINFO_H */