SEGFAULT on a concurrent UPDATE of mix of local and foreign partitions

Поиск
Список
Период
Сортировка
От Andrey Lepikhov
Тема SEGFAULT on a concurrent UPDATE of mix of local and foreign partitions
Дата
Msg-id cb2b808d-cbaa-4772-76ee-c8809bafcf3d@postgrespro.ru
обсуждение исходный текст
Ответы Re: SEGFAULT on a concurrent UPDATE of mix of local and foreign partitions  (Heikki Linnakangas <hlinnaka@iki.fi>)
Список pgsql-bugs
Hi,
Postgres SEGFAULT'ed on the UPDATE of mix of local and foreign partitions.
Initialization - see t.sql
For replaying this segfault just execute in parallel:
UPDATE test SET x = x - 1;

The problem was introduced by commit 1375422.
ExecUpdate has found a concurrently updated tuples and starts subplan 
evaluation. This operation creates new EState for EPQState and sets 
es_result_relations in NULL value. Next, ExecInitNode(subplan) is 
launched and underlying ExecInitForeignScan tries to access to an 
element of es_result_relations. This causes SEGFAULT.

I studied this problem shortly. I think, EPQState can use 
es_result_relations of a parent EState. Patch in attachment fixes this. 
check-world passed clearly.

-- 
regards,
Andrey Lepikhov
Postgres Professional

Вложения

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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: BUG #17132: About "ALTER SUBSCRIPTION ... ADD/DROP PUBLICATION"
Следующее
От: "Naomi's strings"
Дата:
Сообщение: pg_stat warnings keep on printing in postgres log