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 по дате отправления: