Fix a couple of planner bugs in Gather Merge.

Neha Sharma reported these to Rushabh Lathia just after I commit
355d3993c5 went in.  The patch is
Rushabh's, with input from me.
This commit is contained in:
Robert Haas 2017-03-09 12:05:54 -05:00
parent cd603a4d6b
commit 0ee92e1c9b
2 changed files with 3 additions and 2 deletions

View File

@ -1474,13 +1474,14 @@ create_gather_merge_plan(PlannerInfo *root, GatherMergePath *best_path)
Oid *sortOperators;
Oid *collations;
bool *nullsFirst;
List *tlist = build_path_tlist(root, &best_path->path);
/* As with Gather, it's best to project away columns in the workers. */
subplan = create_plan_recurse(root, best_path->subpath, CP_EXACT_TLIST);
/* See create_merge_append_plan for why there's no make_xxx function */
gm_plan = makeNode(GatherMerge);
gm_plan->plan.targetlist = subplan->targetlist;
gm_plan->plan.targetlist = tlist;
gm_plan->num_workers = best_path->num_workers;
copy_generic_path_info(&gm_plan->plan, &best_path->path);

View File

@ -3746,7 +3746,7 @@ create_grouping_paths(PlannerInfo *root,
create_gather_merge_path(root,
grouped_rel,
subpath,
NULL,
partial_grouping_target,
root->group_pathkeys,
NULL,
&total_groups);