Re: BUG #15290: Stuck Parallel Index Scan query
| От | Thomas Munro |
|---|---|
| Тема | Re: BUG #15290: Stuck Parallel Index Scan query |
| Дата | |
| Msg-id | CAEepm=3mshr1rq_wdD20w3CDtK11HoCd-eg6Q26-PMusyTKXDQ@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: BUG #15290: Stuck Parallel Index Scan query (Victor Yegorov <vyegorov@gmail.com>) |
| Ответы |
Re: BUG #15290: Stuck Parallel Index Scan query
|
| Список | pgsql-bugs |
Ok, I see it:
/* check for interrupts while we're not
holding any buffer lock */
CHECK_FOR_INTERRUPTS();
/* step right one page */
so->currPos.buf = _bt_getbuf(rel, blkno, BT_READ);
...
/* nope, keep going */
if (scan->parallel_scan != NULL)
{
status = _bt_parallel_seize(scan, &blkno);
That leads to a condition variable wait, while we still hold that
buffer lock. That prevents interrupts. Oops.
--
Thomas Munro
http://www.enterprisedb.com
В списке pgsql-bugs по дате отправления: