On 2017-06-07 00:03:15 -0400, Tom Lane wrote: > Andres Freund <and...@anarazel.de> writes: > > On 2017-06-06 23:32:53 -0400, Peter Eisentraut wrote: > >> I'm not sure how you would parallelize these, since in most uses you > >> want to have a deterministic output order. > > > Unless you specify ORDER BY you don't really have that anyway, consider > > hash-aggregation. If you want deterministic order, you really need an > > ORDER BY inside the aggregate. > > Hash aggregation does not destroy the property that array_agg/string_agg > will produce results whose components appear in the order that the > subquery emitted them in. It only causes the various aggregate results > in a GROUP BY query to themselves appear in random order.
Whoa, I obviously should stop working tonight. I think it's still a hugely useful to parallelize such aggregates - it might be worthwhile to have two versions of array_agg, one with a serial/combinefunc and one without... Greetings, Andres Freund -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers