Re: Parallel Index Scan vs BTP_DELETED and BTP_HALF_DEAD

Поиск
Список
Период
Сортировка
От Amit Kapila
Тема Re: Parallel Index Scan vs BTP_DELETED and BTP_HALF_DEAD
Дата
Msg-id CAA4eK1J81sA-K--5NaiF60EufBfpF-voZ-FguLCyg98Hx-2heA@mail.gmail.com
обсуждение исходный текст
Ответ на Parallel Index Scan vs BTP_DELETED and BTP_HALF_DEAD  (Thomas Munro <thomas.munro@enterprisedb.com>)
Ответы Re: Parallel Index Scan vs BTP_DELETED and BTP_HALF_DEAD  (Thomas Munro <thomas.munro@enterprisedb.com>)
Список pgsql-hackers
On Mon, Dec 11, 2017 at 8:21 AM, Thomas Munro
<thomas.munro@enterprisedb.com> wrote:
> Hi hackers,
>
>
> ... and then it called _bt_parallel_seize() itself, in violation of
> the rule (by my reading of the code) that you must call
> _bt_parallel_release() (via _bt_readpage()) or _bt_parallel_done()
> after seizing the scan.  If you call _bt_parallel_seize() again
> without doing that first, you'll finish up waiting for yourself
> forever.  Does this theory make sense?
>

Yes, I think if the current page is half-dead or deleted, we need to
set the next page to be scanned and release the parallel scan.  This
has to be done for both forward and backward scans.

Thanks for looking into it.  I will see if we can write some test.  In
the meantime if possible, can you please request Patrick Hemmer to
verify the attached patch?

-- 
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Вложения

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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: Added PostgreSQL internals learning materials in Developer FAQ
Следующее
От: Michael Paquier
Дата:
Сообщение: Re: SIGPIPE in TAP tests