Re: [HACKERS] PoC: Grouped base relation - Mailing list pgsql-hackers

From David Rowley
Subject Re: [HACKERS] PoC: Grouped base relation
Date
Msg-id CAKJS1f_h1CLff92B=+bdrMK2Nf3EfGWaJu2WbzQUYcSBUi02ag@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] PoC: Grouped base relation  (Antonin Houska <ah@cybertec.at>)
Responses Re: [HACKERS] PoC: Grouped base relation  (Antonin Houska <ah@cybertec.at>)
List pgsql-hackers
On 20 January 2017 at 00:22, Antonin Houska <ah@cybertec.at> wrote:
> Sorry, it was my thinko - I somehow confused David's CROSS JOIN example with
> this one. If one side of the join clause is unique and the other becomes
> unique due to aggregation (and if parallel processing is not engaged) then
> neither combinefn nor multiplyfn should be necessary before the finalfn.

Yes, if the join can be detected not to duplicate the groups then a
normal aggregate node can be pushed below the join. No need for
Partial Aggregate, or Finalize Aggregate nodes.

I've a pending patch in the commitfest named "Unique Joins", which
aims teach the planner about the unique properties of joins. So you
should just have both stages of aggregation occur for now, and that
can be improved on once the planner is a bit smart and knows about
unique joins.


-- David Rowley                   http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Allowing nonzero return codes from \quit
Next
From: Peter van Hardenberg
Date:
Subject: Re: [HACKERS] GSoC 2017