firtst release
Revision | 16ae4df51584c0858728838af7506c0b01a44f32 (tree) |
---|---|
Time | 2020-10-29 20:31:47 |
Author | Kyotaro Horiguchi <horikyoga.ntt@gmai...> |
Commiter | Kyotaro Horiguchi |
Update core.c and make_join_rel.c.
From this version core.c and make_join_rel.c are automatically
generated from core code. Adjust them to auto-generated content.
@@ -12,11 +12,6 @@ | ||
12 | 12 | * |
13 | 13 | * src/backend/optimizer/path/allpaths.c |
14 | 14 | * |
15 | - * static functions: | |
16 | - * set_plain_rel_pathlist() | |
17 | - * add_paths_to_append_rel() | |
18 | - * try_partitionwise_join() | |
19 | - * | |
20 | 15 | * public functions: |
21 | 16 | * standard_join_search(): This funcion is not static. The reason for |
22 | 17 | * including this function is make_rels_by_clause_joins. In order to |
@@ -24,6 +19,11 @@ | ||
24 | 19 | * change the behavior of make_join_rel, which is called under this |
25 | 20 | * function. |
26 | 21 | * |
22 | + * static functions: | |
23 | + * set_plain_rel_pathlist() | |
24 | + * set_append_rel_pathlist() | |
25 | + * create_plain_partial_paths() | |
26 | + * | |
27 | 27 | * src/backend/optimizer/path/joinrels.c |
28 | 28 | * |
29 | 29 | * public functions: |
@@ -36,11 +36,10 @@ | ||
36 | 36 | * join_is_legal() |
37 | 37 | * has_join_restriction() |
38 | 38 | * restriction_is_constant_false() |
39 | - * update_child_rel_info() | |
40 | 39 | * build_child_join_sjinfo() |
41 | 40 | * get_matching_part_pairs() |
42 | 41 | * compute_partition_bounds() |
43 | - * | |
42 | + * try_partitionwise_join() | |
44 | 43 | * |
45 | 44 | * Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group |
46 | 45 | * Portions Copyright (c) 1994, Regents of the University of California |
@@ -49,8 +48,8 @@ | ||
49 | 48 | */ |
50 | 49 | |
51 | 50 | static void populate_joinrel_with_paths(PlannerInfo *root, RelOptInfo *rel1, |
52 | - RelOptInfo *rel2, RelOptInfo *joinrel, | |
53 | - SpecialJoinInfo *sjinfo, List *restrictlist); | |
51 | + RelOptInfo *rel2, RelOptInfo *joinrel, | |
52 | + SpecialJoinInfo *sjinfo, List *restrictlist); | |
54 | 53 | |
55 | 54 | /* |
56 | 55 | * set_plain_rel_pathlist |
@@ -266,6 +265,7 @@ standard_join_search(PlannerInfo *root, int levels_needed, List *initial_rels) | ||
266 | 265 | return rel; |
267 | 266 | } |
268 | 267 | |
268 | + | |
269 | 269 | /* |
270 | 270 | * create_plain_partial_paths |
271 | 271 | * Build partial access paths for parallel scan of a plain relation |
@@ -955,6 +955,7 @@ has_join_restriction(PlannerInfo *root, RelOptInfo *rel) | ||
955 | 955 | return false; |
956 | 956 | } |
957 | 957 | |
958 | + | |
958 | 959 | /* |
959 | 960 | * restriction_is_constant_false --- is a restrictlist just FALSE? |
960 | 961 | * |
@@ -1001,6 +1002,7 @@ restriction_is_constant_false(List *restrictlist, | ||
1001 | 1002 | return false; |
1002 | 1003 | } |
1003 | 1004 | |
1005 | + | |
1004 | 1006 | /* |
1005 | 1007 | * Construct the SpecialJoinInfo for a child-join by translating |
1006 | 1008 | * SpecialJoinInfo for the join between parents. left_relids and right_relids |
@@ -1043,6 +1045,7 @@ build_child_join_sjinfo(PlannerInfo *root, SpecialJoinInfo *parent_sjinfo, | ||
1043 | 1045 | return sjinfo; |
1044 | 1046 | } |
1045 | 1047 | |
1048 | + | |
1046 | 1049 | /* |
1047 | 1050 | * get_matching_part_pairs |
1048 | 1051 | * Generate pairs of partitions to be joined from inputs |
@@ -5,7 +5,12 @@ | ||
5 | 5 | * modifications. |
6 | 6 | * |
7 | 7 | * src/backend/optimizer/path/joinrels.c |
8 | + * | |
9 | + * This file contains the following functions from corresponding files. | |
10 | + * | |
11 | + * static functions: | |
8 | 12 | * make_join_rel() |
13 | + * populate_joinrel_with_paths() | |
9 | 14 | * |
10 | 15 | * Portions Copyright (c) 2013-2020, NIPPON TELEGRAPH AND TELEPHONE CORPORATION |
11 | 16 | * Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group |
@@ -44,6 +49,7 @@ adjust_rows(double rows, RowsHint *hint) | ||
44 | 49 | return result; |
45 | 50 | } |
46 | 51 | |
52 | + | |
47 | 53 | /* |
48 | 54 | * make_join_rel |
49 | 55 | * Find or create a join RelOptInfo that represents the join of |
@@ -156,7 +162,7 @@ make_join_rel(PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2) | ||
156 | 162 | /* |
157 | 163 | * If the rows_hint's target relids is not a subset of both of |
158 | 164 | * component rels and is a subset of this joinrel, ths hint's |
159 | - * targets spread over both component rels. This means that | |
165 | + * targets spread over both component rels. This menas that | |
160 | 166 | * this hint has been never applied so far and this joinrel is |
161 | 167 | * the first (and only) chance to fire in current join tree. |
162 | 168 | * Only the multiplication hint has the cumulative nature so we |
@@ -170,7 +176,7 @@ make_join_rel(PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2) | ||
170 | 176 | { |
171 | 177 | /* |
172 | 178 | * If a hint just for me is found, no other adjust method is |
173 | - * useless, but this cannot be more than twice becuase this joinrel | |
179 | + * useles, but this cannot be more than twice becuase this joinrel | |
174 | 180 | * is already adjusted by this hint. |
175 | 181 | */ |
176 | 182 | if (justforme->base.state == HINT_STATE_NOTUSED) |
@@ -217,6 +223,7 @@ make_join_rel(PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2) | ||
217 | 223 | return joinrel; |
218 | 224 | } |
219 | 225 | |
226 | + | |
220 | 227 | /* |
221 | 228 | * populate_joinrel_with_paths |
222 | 229 | * Add paths to the given joinrel for given pair of joining relations. The |