Re: es_query_dsa is broken

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: es_query_dsa is broken
Дата
Msg-id CA+TgmoYQAaH-wV1YB3SxNTTbR5y2UUNA+_C1=Q=8jwxOw30juA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: es_query_dsa is broken  (Amit Kapila <amit.kapila16@gmail.com>)
Ответы Re: es_query_dsa is broken  (Amit Kapila <amit.kapila16@gmail.com>)
Список pgsql-hackers
On Tue, Dec 5, 2017 at 7:24 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
> + EState *estate = gatherstate->ps.state;
> +
> + /* Install our DSA area while executing the plan. */
> + estate->es_query_dsa = gatherstate->pei->area;
>   outerTupleSlot = ExecProcNode(outerPlan);
> + estate->es_query_dsa = NULL;
>
> Won't the above coding pattern create a problem, if ExecProcNode
> throws an error and outer block catches it and continues execution
> (consider the case of execution inside PL blocks)?

I don't see what the problem is.  The query that got aborted by the
error wouldn't be sharing an EState with one that didn't.  Control
would have to return to someplace inside the same ExecProcNode and it
would have to return normally.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: explain analyze output with parallel workers - question aboutmeaning of information for explain.depesz.com
Следующее
От: Robert Haas
Дата:
Сообщение: Re: [HACKERS] pow support for pgbench