PostgreSQL Source Code
git master
|
#include "nodes/pathnodes.h"
Go to the source code of this file.
Functions | |
bool | have_relevant_joinclause (PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2) |
void | add_join_clause_to_rels (PlannerInfo *root, RestrictInfo *restrictinfo, Relids join_relids) |
void | remove_join_clause_from_rels (PlannerInfo *root, RestrictInfo *restrictinfo, Relids join_relids) |
void add_join_clause_to_rels | ( | PlannerInfo * | root, |
RestrictInfo * | restrictinfo, | ||
Relids | join_relids | ||
) |
Definition at line 95 of file joininfo.c.
References bms_next_member(), find_base_rel_ignore_join(), RelOptInfo::joininfo, and lappend().
Referenced by distribute_restrictinfo_to_rels().
bool have_relevant_joinclause | ( | PlannerInfo * | root, |
RelOptInfo * | rel1, | ||
RelOptInfo * | rel2 | ||
) |
Definition at line 36 of file joininfo.c.
References bms_overlap(), RelOptInfo::has_eclass_joins, have_relevant_eclass_joinclause(), RelOptInfo::joininfo, lfirst, list_length(), RelOptInfo::relids, and RestrictInfo::required_relids.
Referenced by desirable_join(), has_legal_joinclause(), join_search_one_level(), and make_rels_by_clause_joins().
void remove_join_clause_from_rels | ( | PlannerInfo * | root, |
RestrictInfo * | restrictinfo, | ||
Relids | join_relids | ||
) |
Definition at line 125 of file joininfo.c.
References Assert(), bms_next_member(), find_base_rel_ignore_join(), RelOptInfo::joininfo, list_delete_ptr(), and list_member_ptr().
Referenced by remove_rel_from_query().