Re: asynchronous execution

Поиск
Список
Период
Сортировка
От Amit Khandekar
Тема Re: asynchronous execution
Дата
Msg-id CAJ3gD9fRmEhUoBMnNN8K_QrHZf7m4rmOHTFDj492oeLZff8o=w@mail.gmail.com
обсуждение исходный текст
Ответ на Re: asynchronous execution  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: asynchronous execution  (Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>)
Re: asynchronous execution  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On 24 September 2016 at 06:39, Robert Haas <robertmhaas@gmail.com> wrote:
> Since Kyotaro Horiguchi found that my previous design had a
> system-wide performance impact due to the ExecProcNode changes, I
> decided to take a different approach here: I created an async
> infrastructure where both the requestor and the requestee have to be
> specifically modified to support parallelism, and then modified Append
> and ForeignScan to cooperate using the new interface.  Hopefully that
> means that anything other than those two nodes will suffer no
> performance impact.  Of course, it might have other problems....

I see that the reason why you re-designed the asynchronous execution
implementation is because the earlier implementation showed
performance degradation in local sequential and local parallel scans.
But I checked that the ExecProcNode() changes were not that
significant as to cause the degradation. It will not call
ExecAsyncWaitForNode() unless that node supports asynchronism. Do you
feel there is anywhere else in the implementation that is really
causing this degrade ? That previous implementation has some issues,
but they seemed solvable. We could resolve the plan state recursion
issue by explicitly making sure the same plan state does not get
called again while it is already executing.

Thanks
-Amit Khandekar



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

Предыдущее
От: Ashutosh Bapat
Дата:
Сообщение: Re: Some information about the small portion of source code of postgreSQL
Следующее
От: Michael Paquier
Дата:
Сообщение: Re: [COMMITTERS] pgsql: pg_ctl: Detect current standby state from pg_control