Inherited UPDATE/DELETE vs async execution

Поиск
Список
Период
Сортировка
От Etsuro Fujita
Тема Inherited UPDATE/DELETE vs async execution
Дата
Msg-id CAPmGK158e9sJOfuWxfn+0ynrspXQU3JhNjSCbaoeSzMvnga+bw@mail.gmail.com
обсуждение исходный текст
Ответы Re: Inherited UPDATE/DELETE vs async execution  (Justin Pryzby <pryzby@telsasoft.com>)
Re: Inherited UPDATE/DELETE vs async execution  (Amit Langote <amitlangote09@gmail.com>)
Список pgsql-hackers
I noticed this while working on the
EXPLAIN-ANALYZE-for-async-capable-nodes issue:

EXPLAIN (VERBOSE, COSTS OFF)
DELETE FROM async_pt;
                           QUERY PLAN
----------------------------------------------------------------
 Delete on public.async_pt
   Foreign Delete on public.async_p1 async_pt_1
   Foreign Delete on public.async_p2 async_pt_2
   Delete on public.async_p3 async_pt_3
   ->  Append
         ->  Async Foreign Delete on public.async_p1 async_pt_1
               Remote SQL: DELETE FROM public.base_tbl1
         ->  Async Foreign Delete on public.async_p2 async_pt_2
               Remote SQL: DELETE FROM public.base_tbl2
         ->  Seq Scan on public.async_p3 async_pt_3
               Output: async_pt_3.tableoid, async_pt_3.ctid
(11 rows)

DELETE FROM async_pt;
server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.
connection to server was lost

The cause for this would be that direct-update plans are mistakenly
treated as async-capable ones, as shown in the EXPLAIN output.  To
fix, I think we should modify postgresPlanDirectModify() so that it
clears the async-capable flag if it is set.  Attached is a patch for
that.  Maybe I am missing something, though.

Best regards,
Etsuro Fujita

Вложения

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

Предыдущее
От: Etsuro Fujita
Дата:
Сообщение: Re: Asynchronous Append on postgres_fdw nodes.
Следующее
От: Tom Lane
Дата:
Сообщение: Draft back-branch release notes are up