Re: Missing docs for new enable_group_by_reordering GUC
Pavel Borisov <pashkin.elfe@gmail.com>
From: Pavel Borisov <pashkin.elfe@gmail.com>
To: Alexander Korotkov <aekorotkov@gmail.com>
Cc: Andrei Lepikhov <lepihov@gmail.com>, Bruce Momjian <bruce@momjian.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2024-06-18T12:45:25Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add doc entry for the new GUC paramenter enable_group_by_reordering
- 82e79ee46b1c 17.0 landed
-
Explore alternative orderings of group-by pathkeys during optimization.
- 0452b461bc40 17.0 cited
Hi, Alexander! On Tue, 18 Jun 2024 at 16:13, Alexander Korotkov <aekorotkov@gmail.com> wrote: > On Tue, Jun 18, 2024 at 9:14 AM Andrei Lepikhov <lepihov@gmail.com> wrote: > > On 6/18/24 09:32, Bruce Momjian wrote: > > > This commit added enable_group_by_reordering: > > > > > > commit 0452b461bc4 > > > Author: Alexander Korotkov <akorotkov@postgresql.org> > > > Date: Sun Jan 21 22:21:36 2024 +0200 > > > It mentions it was added as a GUC to postgresql.conf, but I see no SGML > > > docs for this new GUC value. Would someone please add docs for this? > > > Thanks. > > It is my mistake, sorry for that. See the patch in attachment. > > Bruce, thank for noticing. Andrei, thank you for providing a fix. > Please, check the revised patch. > I briefly looked into this docs patch. Planner gucs are arranged alphabetically, so enable_group_by_reordering is better to come after enable-gathermerge not before. + Enables or disables the reordering of keys in a + <literal>GROUP BY</literal> clause to match the ordering keys of a + child node of the plan, such as an index scan. When turned off, keys + in a <literal>GROUP BY</literal> clause are only reordered to match + the <literal>ORDER BY</literal> clause, if any. The default is + <literal>on</literal>. I'd also suggest the same style as already exists for enable_presorted_aggregate guc i.e: Controls if the query planner will produce a plan which will provide <literal>GROUP BY</literal> keys presorted in the order of keys of a child node of the plan, such as an index scan. When disabled, the query planner will produce a plan with <literal>GROUP BY</literal> keys only reordered to match the <literal>ORDER BY</literal> clause, if any. When enabled, the planner will try to produce a more efficient plan. The default value is on. Regards, Pavel Borisov Supabase