Re: [HACKERS] Partition-wise aggregation/grouping
От | Antonin Houska |
---|---|
Тема | Re: [HACKERS] Partition-wise aggregation/grouping |
Дата | |
Msg-id | 27699.1493292226@localhost обсуждение исходный текст |
Ответ на | Re: [HACKERS] Partition-wise aggregation/grouping (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: [HACKERS] Partition-wise aggregation/grouping
|
Список | pgsql-hackers |
Robert Haas <robertmhaas@gmail.com> wrote: > On Wed, Apr 26, 2017 at 6:28 AM, Antonin Houska <ah@cybertec.at> wrote: > > Attached is a diff that contains both patches merged. This is just to prove my > > assumption, details to be elaborated later. The scripts attached produce the > > following plan in my environment: > > > > QUERY PLAN > > ------------------------------------------------ > > Parallel Finalize HashAggregate > > Group Key: b_1.j > > -> Append > > -> Parallel Partial HashAggregate > > Group Key: b_1.j > > -> Hash Join > > Hash Cond: (b_1.j = c_1.k) > > -> Seq Scan on b_1 > > -> Hash > > -> Seq Scan on c_1 > > -> Parallel Partial HashAggregate > > Group Key: b_2.j > > -> Hash Join > > Hash Cond: (b_2.j = c_2.k) > > -> Seq Scan on b_2 > > -> Hash > > -> Seq Scan on c_2 > > Well, I'm confused. I see that there's a relationship between what > Antonin is trying to do and what Jeevan is trying to do, but I can't > figure out whether one is a subset of the other, whether they're both > orthogonal, or something else. This plan looks similar to what I > would expect Jeevan's patch to produce, The point is that the patch Jeevan wanted to work on is actually a subset of [1] combined with [2]. > except i have no idea what "Parallel" would mean in a plan that contains no > Gather node. parallel_aware field was set mistakenly on the AggPath. Fixed patch is attached below, producing this plan: QUERY PLAN ------------------------------------------------ Finalize HashAggregate Group Key: b_1.j -> Append -> Partial HashAggregate Group Key: b_1.j -> Hash Join Hash Cond: (b_1.j = c_1.k) -> Seq Scan on b_1 -> Hash -> Seq Scan on c_1 -> Partial HashAggregate Group Key: b_2.j -> Hash Join Hash Cond: (b_2.j = c_2.k) -> Seq Scan on b_2 -> Hash -> Seq Scan on c_2 [1] https://www.postgresql.org/message-id/9666.1491295317%40localhost [2] https://commitfest.postgresql.org/14/994/ -- Antonin Houska Cybertec Schönig & Schönig GmbH Gröhrmühlgasse 26 A-2700 Wiener Neustadt Web: http://www.postgresql-support.de, http://www.cybertec.at -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Вложения
В списке pgsql-hackers по дате отправления: