Re: POC: GROUP BY optimization
От | Alena Rybakina |
---|---|
Тема | Re: POC: GROUP BY optimization |
Дата | |
Msg-id | df09eb50-b4ae-4662-9247-73296410e8dc@postgrespro.ru обсуждение исходный текст |
Ответ на | Re: POC: GROUP BY optimization (Andrei Lepikhov <a.lepikhov@postgrespro.ru>) |
Список | pgsql-hackers |
On 15.01.2024 12:46, Andrei Lepikhov wrote: > On 15/1/2024 13:42, Richard Guo wrote: >> >> On Mon, Jan 15, 2024 at 8:20 AM Alexander Korotkov >> <aekorotkov@gmail.com <mailto:aekorotkov@gmail.com>> wrote: >> >> Thank you for providing the test case relevant for this code change. >> The revised patch incorporating this change is attached. Now the >> patchset looks good to me. I'm going to push it if there are no >> objections. >> >> >> Seems I'm late for the party. Can we hold for several more days? I'd >> like to have a review on this patch. > Get on board! It looks like this feature needs as much review as > possible (likewise SJE). > Hi! Thank you for your work on this issue! I believe that this will help the scheduler to make a more optimal query plan here and therefore speed up their execution. I have reviewed patches and noticed that we can add some code refactoring. I have attached a diff file (group_by.diff) to this email. The changes involve spelling corrections, renaming variables and porting some common parts. In addition, I have a few questions, since some points in the code remained unclear to me. 1. I didn't understand why we have a question in the comment next to the enable_group_by_reordering variable in src/backend/optimizer/path/pathkeys.c file, I assumed it was spelling and fixed it in the diff file. 2. Why do we set the variable (path = path_save) here (add_paths_to_grouping_rel function) if we change its variable below and we can pass path_save as a parameter? foreach(lc2, pathkey_orderings) { PathKeyInfo *info = (PathKeyInfo *) lfirst(lc2); /* restore the path (we replace it in the loop) */ path = path_save; path = make_ordered_path(root, grouped_rel, path, cheapest_path, info->pathkeys); if (path == NULL) continue; -- Regards, Alena Rybakina Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Вложения
В списке pgsql-hackers по дате отправления: