Re: POC: GROUP BY optimization

Поиск
Список
Период
Сортировка
Искать
От
Andrei Lepikhov
Тема
Re: POC: GROUP BY optimization
Дата
Msg-id
17037754-f187-4138-8285-0e2bfebd0dea@postgrespro.ru
Ответ на
Список
Дерево обсуждения
POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Gavin Flower <GavinFlower@archidevsys.co.nz>
Re: POC: GROUP BY optimization Michael Paquier <michael@paquier.xyz>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Andres Freund <andres@anarazel.de>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Robert Haas <robertmhaas@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Pavel Borisov <pashkin.elfe@gmail.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Pavel Borisov <pashkin.elfe@gmail.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Dmitry Dolgov <9erthalion6@gmail.com>
Re: POC: GROUP BY optimization Pavel Borisov <pashkin.elfe@gmail.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Claudio Freire <klaussfreire@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Claudio Freire <klaussfreire@gmail.com>
Re: POC: GROUP BY optimization Tomas Vondra <tomas.vondra@2ndquadrant.com>
Re: POC: GROUP BY optimization Claudio Freire <klaussfreire@gmail.com>
Re: POC: GROUP BY optimization Teodor Sigaev <teodor@sigaev.ru>
Re: POC: GROUP BY optimization Claudio Freire <klaussfreire@gmail.com>
On 4/12/24 06:44, Tom Lane wrote:
> * The very first hunk causes get_eclass_for_sort_expr to have
> side-effects on existing EquivalenceClass data structures.
> What is the argument that that's not going to cause problems?
> At the very least it introduces asymmetry, in that the first
> caller wins the chance to change the EC's ec_sortref and later
> callers won't be able to.
Let me resolve issues bit by bit.
Addressing your first note, 'asymmetry,' I discovered this part of the 
code. Before the 8d83a5d, it could cause some artefacts, but since then, 
a kind of asymmetry has been introduced into the GROUP-BY clause list.
As you can see in the attached patch, GROUP-BY reordering works even 
when the asymmetry of the 8d83a5d chooses different keys.

At the same time, I agree that implicitly setting anything in an 
exporting function, which should just look up for EC, is a questionable 
coding style. To avoid possible usage issues (in extensions, for 
example), I propose setting it up afterwards, explicitly forcing this 
action by input parameter - see my attempt in the attachment.

-- 
regards,
Andrei Lepikhov
Postgres Professional
В списке pgsql-hackers по дате отправления
От: Michael Paquier
Дата:
От: Japin Li
Дата:
FAQ