Re: Combining Aggregates - Mailing list pgsql-hackers

From David Rowley
Subject Re: Combining Aggregates
Date
Msg-id CAKJS1f_KvYuf=CuCMWN8Tz6t-Rr+G+z3YX5XZsj_AQdKuoA6Hw@mail.gmail.com
Whole thread Raw
In response to Re: Combining Aggregates  (Haribabu Kommi <kommi.haribabu@gmail.com>)
Responses Re: Combining Aggregates  (Haribabu Kommi <kommi.haribabu@gmail.com>)
List pgsql-hackers
On 24 December 2015 at 13:55, Haribabu Kommi <kommi.haribabu@gmail.com> wrote:
On Wed, Dec 23, 2015 at 7:50 PM, David Rowley
<david.rowley@2ndquadrant.com> wrote:
> One other part that I'm not too sure on how to deal with is how to set the
> data type for the Aggrefs when we're not performing finalization on the
> aggregate node. The return type for the Aggref in this case will be either
> the transtype, or the serialtype, depending on if we're serializing the
> states or not. To do this, I've so far just come up with
> set_partialagg_aggref_types() which is called during setrefs. The only other
> time that I can think to do this return type update would be when building
> the partial agg node's target list. I'm open to better ideas on this part.


Thanks for the patch. I am not sure about the proper place of this change,
but changing it with transtype will make all float4 and float8 aggregates to
work in parallel. Most of these aggregates return type is typbyval and
transition type is a variable length.

we may need to write better combine functions for these types to avoid wrong
results because of parallel.

I might be misunderstanding you here, but  yeah, well, if by "write better" you mean "write some", then yeah :)  I only touched sum(), min() and max() so far as I didn't need to do anything special with these. I'm not quite sure what you mean with the "wrong results" part. Could you explain more?

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

pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: Combining Aggregates
Next
From: Michael Paquier
Date:
Subject: Re: COPY FREEZE and PD_ALL_VISIBLE