Re: [HACKERS] Gather Merge
От | Rushabh Lathia |
---|---|
Тема | Re: [HACKERS] Gather Merge |
Дата | |
Msg-id | CAGPqQf11MVo2Fj06wk_QF8+BgiDGTfQ2-MeyeUE7PJoHZhgg+g@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] Gather Merge (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: [HACKERS] Gather Merge
|
Список | pgsql-hackers |
On Thu, Mar 9, 2017 at 9:42 PM, Robert Haas <robertmhaas@gmail.com> wrote:
On Thu, Mar 9, 2017 at 8:21 AM, Rushabh Lathia <rushabh.lathia@gmail.com> wrote:
> Thanks Robert for committing this.
>
> My colleague Neha Sharma found one regression with the patch. I was about
> to send this mail and noticed that you committed the patch.
Oops. Bad timing.
> postgres=# explain select aid from pgbench_accounts where aid % 25= 0 group
> by aid;
> ERROR: ORDER/GROUP BY expression not found in targetlist
I think your fix for this looks right, although I would write it this way:
- gm_plan->plan.targetlist = subplan->targetlist;
+ gm_plan->plan.targetlist = build_path_tlist(root, &best_path->path);
The second part of your fix looks wrong. I think you want this:
create_gather_merge_path(root,
grouped_rel,
subpath,
- NULL,
+ partial_grouping_target,
root->group_pathkeys,
NULL,
&total_groups);
That will match the create_gather_path case.
Right, I did that change and perform the test with the fix and I don't
see any regression now.
This test case is still failing for me even with those fixes:
rhaas=# select aid+1 from pgbench_accounts group by aid+1;
ERROR: could not find pathkey item to sort
I don't see this failure with the patch. Even I forced the gather merge
in the above query and that just working fine.
Attaching patch, with the discussed changes.
Thanks,
Rushabh Lathia
Вложения
В списке pgsql-hackers по дате отправления: