On 24 December 2015 at 13:55, Haribabu Kommi <kommi.harib...@gmail.com>
wrote:

> On Wed, Dec 23, 2015 at 7:50 PM, David Rowley
> <david.row...@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

Reply via email to