On Thu, Dec 14, 2017 at 10:47 AM, Andreas Seltenreich
<andreas.seltenreich@credativ.de> wrote:
> We did some more reducing work on the original query and data. The
> following testcase reproduces the double free reported by valgrind for
> me when run against a vanilla REL9_6_STABLE build.
> --8<---------------cut here---------------start------------->8---
> drop table if exists bug;
> create table bug (n text, v text, b text, t text);
> insert into bug
> select i%9, i%9, i%16 ,i%4096 from generate_series(1,100000) g(i);
> analyze bug;
>
> explain select * from (
> select thecube.nv
> from ( select
> (n || ' ') || coalesce(v, '') as nv
> from bug
> group by ((n || ' ') || coalesce(v, '')) ,cube(b, t)
> ) thecube
> where nv = '8 8'
> ) sub limit 7000;
> --8<---------------cut here---------------end--------------->8---
I can reproduce this against REL9_6_STABLE, once work_mem is set to
4MB, and replacement_sort_tuples is set to 150000.
--
Peter Geoghegan