Re: Parallel bt build crashes when DSM_NONE

Peter Geoghegan <pg@bowt.ie>

From: Peter Geoghegan <pg@bowt.ie>
To: Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2018-02-12T17:26:23Z
Lists: pgsql-hackers
On Fri, Feb 9, 2018 at 12:06 AM, Kyotaro HORIGUCHI
<horiguchi.kyotaro@lab.ntt.co.jp> wrote:
> I happend to find that server crashes during regtest when
> DSM_NONE is enforced. The attached patch fixes that.
>
> The cause is the fact that _bt_spools_heapscan runs
> _bt_begin_parallel() even if dynamic_shared_memory_type is
> DSM_NONE. It is because plan_create_index_workers() is ignoring
> dynamic_shared_memory_type.

I think that your patch does the right thing.
plan_create_index_workers() is supposed to take care of parallel
safety, and this is a parallel safety issue.

Thanks
-- 
Peter Geoghegan


Commits

  1. Fix parallel index builds for dynamic_shared_memory_type=none.