Re: Error from array_agg when table has many rows

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: David Rowley <dgrowleyml(at)gmail(dot)com>, Kirill Zdornyy <kirill(at)dineserve(dot)com>, "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: Error from array_agg when table has many rows
Date: 2025-03-08 15:50:01
Message-ID: 1297401.1741449001@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Richard Guo <guofenglinux(at)gmail(dot)com> writes:
> We are performing deserialization during the final phase of the
> aggregation on data of type RECORD but we fail to provide a valid
> typmod (array_agg_deserialize() uses -1 as the typmod when calling the
> receiveproc).

> I haven't verified it, but I suspect it's related to 16fd03e95.

Yeah. I don't think there is any way for array_agg_deserialize to
know the correct typmod, so what we have to do is disable using
partial aggregation in this case. Fortunately there's a
policy-setting function that can be taught that, as attached.

regards, tom lane

Attachment Content-Type Size
disable_partial_aggregation_on_RECORD.patch text/x-diff 1.1 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Marcin Wisnicki 2025-03-08 19:32:23 Re: BUG #18836: Cannot import foreign schema under different schema name when foreign table uses row types
Previous Message Richard Guo 2025-03-08 09:38:51 Re: Error from array_agg when table has many rows