diff options
author | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2021-02-23 20:04:47 -0300 |
---|---|---|
committer | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2021-02-23 20:05:15 -0300 |
commit | 5a65eacfdc69ee8c9d3ed92d838bc53628fbb7c6 (patch) | |
tree | 36f5108919ac936e5f902dc422238ae9e9c2d470 /src | |
parent | 8deb6b38dc4c7a7fd4719ee45e4b00d62b27dffe (diff) | |
download | postgresql-5a65eacfdc69ee8c9d3ed92d838bc53628fbb7c6.tar.gz postgresql-5a65eacfdc69ee8c9d3ed92d838bc53628fbb7c6.zip |
Fix confusion in comments about generate_gather_paths
d2d8a229bc58 introduced a new function generate_useful_gather_paths to
be used as a replacement for generate_gather_paths, but forgot to update
a couple of places that referenced the older function.
This is possibly not 100% complete (ref. create_ordered_paths), but it's
better than not changing anything.
Author: "Hou, Zhijie" <houzj.fnst@cn.fujitsu.com>
Reviewed-by: Tomas Vondra <tomas.vondra@enterprisedb.com>
Discussion: https://postgr.es/m/4ce1d5116fe746a699a6d29858c6a39a@G08CNEXMBPEKD05.g08.fujitsu.local
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/optimizer/path/allpaths.c | 9 | ||||
-rw-r--r-- | src/backend/optimizer/plan/planner.c | 17 |
2 files changed, 14 insertions, 12 deletions
diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index cd3fdd259cd..d73ac562eb9 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -3019,10 +3019,11 @@ standard_join_search(PlannerInfo *root, int levels_needed, List *initial_rels) join_search_one_level(root, lev); /* - * Run generate_partitionwise_join_paths() and generate_gather_paths() - * for each just-processed joinrel. We could not do this earlier - * because both regular and partial paths can get added to a - * particular joinrel at multiple times within join_search_one_level. + * Run generate_partitionwise_join_paths() and + * generate_useful_gather_paths() for each just-processed joinrel. We + * could not do this earlier because both regular and partial paths + * can get added to a particular joinrel at multiple times within + * join_search_one_level. * * After that, we're done creating paths for the joinrel, so run * set_cheapest(). diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index adf68d87906..545b56bcafd 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -7212,14 +7212,14 @@ create_partial_grouping_paths(PlannerInfo *root, * Generate Gather and Gather Merge paths for a grouping relation or partial * grouping relation. * - * generate_gather_paths does most of the work, but we also consider a special - * case: we could try sorting the data by the group_pathkeys and then applying - * Gather Merge. + * generate_useful_gather_paths does most of the work, but we also consider a + * special case: we could try sorting the data by the group_pathkeys and then + * applying Gather Merge. * * NB: This function shouldn't be used for anything other than a grouped or * partially grouped relation not only because of the fact that it explicitly * references group_pathkeys but we pass "true" as the third argument to - * generate_gather_paths(). + * generate_useful_gather_paths(). */ static void gather_grouping_paths(PlannerInfo *root, RelOptInfo *rel) @@ -7379,10 +7379,11 @@ apply_scanjoin_target_to_paths(PlannerInfo *root, * variations. So we drop old paths and thereby force the work to be done * below the Append, except in the case of a non-parallel-safe target. * - * Some care is needed, because we have to allow generate_gather_paths to - * see the old partial paths in the next stanza. Hence, zap the main - * pathlist here, then allow generate_gather_paths to add path(s) to the - * main list, and finally zap the partial pathlist. + * Some care is needed, because we have to allow + * generate_useful_gather_paths to see the old partial paths in the next + * stanza. Hence, zap the main pathlist here, then allow + * generate_useful_gather_paths to add path(s) to the main list, and + * finally zap the partial pathlist. */ if (rel_is_partitioned) rel->pathlist = NIL; |