On Fri, Feb 09, 2018 at 05:06:35PM +0900, Kyotaro HORIGUCHI 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.
Adding Peter Geoghegan as the author and Robert as the committer in CC, as that's a mistake from 9da0cc35. > We can reproduce this by letting initdb set > dynamic_shared_memory_type=none regardless of actual > availability. (Second attached) and just "make check". Or more simply you can just setup an instance with this configuration and run installcheck. No need to patch initdb for that. 4 regression tests fail when using dynamic_shared_memory_type=none: join, aggregates, select_parallel and write_parallel. test_shm_mq of course blows up. Could that justify getting rid of DSM_IMPL_NONE? As far as I can see there is an alternative on Windows, and we fallback to sysv in the worst case. So I am wondering what's actually the use case for "none". And it is good to keep alternate outputs at a minimum, those tend to rot easily. Except for those mind errands your patch looks good to me. -- Michael
Description: PGP signature