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