*
* src/backend/optimizer/path/allpaths.c
*
- * static functions:
- * set_plain_rel_pathlist()
- * add_paths_to_append_rel()
- * try_partitionwise_join()
- *
* public functions:
* standard_join_search(): This funcion is not static. The reason for
* including this function is make_rels_by_clause_joins. In order to
* change the behavior of make_join_rel, which is called under this
* function.
*
+ * static functions:
+ * set_plain_rel_pathlist()
+ * set_append_rel_pathlist()
+ * create_plain_partial_paths()
+ *
* src/backend/optimizer/path/joinrels.c
*
* public functions:
* join_is_legal()
* has_join_restriction()
* restriction_is_constant_false()
- * update_child_rel_info()
* build_child_join_sjinfo()
- *
+ * try_partitionwise_join()
*
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*/
static void populate_joinrel_with_paths(PlannerInfo *root, RelOptInfo *rel1,
- RelOptInfo *rel2, RelOptInfo *joinrel,
- SpecialJoinInfo *sjinfo, List *restrictlist);
+ RelOptInfo *rel2, RelOptInfo *joinrel,
+ SpecialJoinInfo *sjinfo, List *restrictlist);
/*
* set_plain_rel_pathlist
return rel;
}
+
/*
* create_plain_partial_paths
* Build partial access paths for parallel scan of a plain relation
return false;
}
+
/*
* restriction_is_constant_false --- is a restrictlist just FALSE?
*
return false;
}
+
/*
* Construct the SpecialJoinInfo for a child-join by translating
* SpecialJoinInfo for the join between parents. left_relids and right_relids
return sjinfo;
}
+
/*
* Assess whether join between given two partitioned relations can be broken
* down into joins between matching partitions; a technique called
* modifications.
*
* src/backend/optimizer/path/joinrels.c
+ *
+ * This file contains the following functions from corresponding files.
+ *
+ * static functions:
* make_join_rel()
+ * populate_joinrel_with_paths()
*
* Portions Copyright (c) 2013-2020, NIPPON TELEGRAPH AND TELEPHONE CORPORATION
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
return result;
}
+
/*
* make_join_rel
* Find or create a join RelOptInfo that represents the join of
return joinrel;
}
+
/*
* populate_joinrel_with_paths
* Add paths to the given joinrel for given pair of joining relations. The