Re: ERROR: too many dynamic shared memory segments - Mailing list pgsql-general

From Dilip Kumar
Subject Re: ERROR: too many dynamic shared memory segments
Date
Msg-id CAFiTN-uhcNiaQK9aS0_REr=7YDwgDUU11uWE4mG7t_Rq7Y-GkA@mail.gmail.com
Whole thread Raw
In response to Re: ERROR: too many dynamic shared memory segments  (Thomas Munro <thomas.munro@enterprisedb.com>)
Responses Re: ERROR: too many dynamic shared memory segments  (Robert Haas <robertmhaas@gmail.com>)
Re: ERROR: too many dynamic shared memory segments  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-general
On Tue, Nov 28, 2017 at 4:18 AM, Thomas Munro <thomas.munro@enterprisedb.com> wrote:
On Tue, Nov 28, 2017 at 10:05 AM, Jakub Glapa <jakub.glapa@gmail.com> wrote:
> As for the crash. I dug up the initial log and it looks like a segmentation
> fault...
>
> 2017-11-23 07:26:53 CET:192.168.10.83(35238):user@db:[30003]: ERROR:  too
> many dynamic shared memory segments

I think there are two failure modes: one of your sessions showed the
"too many ..." error (that's good, ran out of slots and said so and
our error machinery worked as it should), and another crashed with a
segfault, because it tried to use a NULL "area" pointer (bad).  I
think this is a degenerate case where we completely failed to launch
parallel query, but we ran the parallel query plan anyway and this
code thinks that the DSA is available.  Oops.

 I think BitmapHeapScan check whether dsa is valid or not if DSA is not valid then it should assume it's non-parallel plan.

Attached patch should fix the issue.

--
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com
Attachment

pgsql-general by date:

Previous
From: stevenchang1213
Date:
Subject: Re: Table and Index bloating
Next
From: Bjorn T Johansen
Date:
Subject: jsonb and where clause?