Re: BUG #15290: Stuck Parallel Index Scan query

Victor Yegorov <vyegorov@gmail.com>

From: Victor Yegorov <vyegorov@gmail.com>
To: amit.kapila16@gmail.com
Cc: thomas.munro@enterprisedb.com, pgsql-bugs@lists.postgresql.org
Date: 2018-07-26T10:23:01Z
Lists: pgsql-bugs
ср, 25 июл. 2018 г. в 8:46, Amit Kapila <amit.kapila16@gmail.com>:

> On Wed, Jul 25, 2018 at 8:43 AM, Amit Kapila <amit.kapila16@gmail.com>
> wrote:
> > Well spotted.  I think here we can release the current page lock
> > before calling _bt_parallel_seize as we don't need it to get the next
> > page.
> >
>
> I have written a patch on the above lines and manually verified (by
> reproducing the issue via debugger) that it fixes the issue.  Thomas,
> Victor, is it possible for you guys to see if the attached fixes the
> issue for you?
>

First, I failed to reproduce Thomas' case on the VM with just 1 core.
But it is reproduced just fine on an 8-core machine, make sure to warm up
the index first though.

Patch fixes the issue for me here.


-- 
Victor Yegorov

Commits

  1. Fix the buffer release order for parallel index scans.