On 4/3/22 20:11, Andres Freund wrote: > Hi, > > On 2022-04-03 18:56:39 -0400, Andrew Dunstan wrote: >> Haven't found the issue yet :-( It happens on the second call for the >> partition to json_check_unique_key(). >> >> Here's a more idiomatic and self-contained query that triggers the problem. >> >> >> select json_objectagg('10' : ref_0.level2 with unique keys) >> over (partition by ref_0.parent_no order by ref_0.level2) >> from (values (1::int,1::int),(1,2),(2,1),(2,2)) as ref_0(parent_no,level2); > The hash was created in a context that's already freed. > [...] > > > I don't think you're allowed to free stuff in a finalfunc - we might reuse the > transition state for further calls to the aggregate. >
Doh! Of course! I'll fix it in the morning. Thanks. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com