Re: [BUGS] Crash with a CUBE query on 9.6

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: [BUGS] Crash with a CUBE query on 9.6
Дата
Msg-id 4846.1482176240@sss.pgh.pa.us
обсуждение исходный текст
Ответ на [BUGS] Crash with a CUBE query on 9.6  (Heikki Linnakangas <hlinnaka@iki.fi>)
Ответы Re: [BUGS] Crash with a CUBE query on 9.6  (Heikki Linnakangas <hlinnaka@iki.fi>)
Список pgsql-bugs
Heikki Linnakangas <hlinnaka@iki.fi> writes:
> The attached test case crashes on REL9_6_STABLE and master. On 9.5, it
> worked.

As best I can tell, this is the fault of commit 804163bc2.  The problem
query can be simplified to

SELECT
  STDDEV(DISTINCT floor(sale.cn)),
  AVG(DISTINCT floor(sale.cn))
FROM sale,vendor
WHERE sale.vn=vendor.vn
GROUP BY CUBE((sale.cn,sale.dt,sale.dt),(sale.pn,sale.prc),(sale.qty,sale.vn)),sale.qty order by 1,2 ;

The two aggregates share a "pertrans" state, but finalize_aggregates
does not account for that and calls process_ordered_aggregate_single()
twice on the same pertrans state.  The second time crashes because we
already deleted the tuplesort object the first time.

Probably, the loop in finalize_aggregates needs to be split into two,
one over the pertrans states and then a second one over the peragg states.
But this code has been hacked up enough since I last looked at it that
I'm hesitant to try to fix it myself.

            regards, tom lane


--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: [BUGS] Crash with a CUBE query on 9.6
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: [BUGS] Crash with a CUBE query on 9.6