pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Dilip Kumar <dilipbalaut@gmail.com>
Cc: Thomas Munro <thomas.munro@enterprisedb.com>
Cc: Jakub Glapa <jakub.glapa@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Subject: Re: ERROR: too many dynamic shared memory segments
Date: Fri, 02 Feb 2018 15:01:15 -0500
Message-ID: <3647.1517601675@sss.pgh.pa.us> (raw)
In-Reply-To: <CA+Tgmob8LFw55DzH1QEREpBEA9RJ_W_amhBFCVZ6WMwUhVpOqg@mail.gmail.com>
References: <CAJk1zg1LpAAQ3w2bekWd7cbNppBrcgO2baa4zm+Fp=nwQ=MaUg@mail.gmail.com>
	<CAEepm=1C6rXmUpUtj0pNmS4AEEFTOcJOXXF1BLA1SMmSwZX9Yw@mail.gmail.com>
	<CAJk1zg2XqYa1Dx14z9X3qkUgWH6kpoNbvSGT_=NtzDPnMhfFHg@mail.gmail.com>
	<CAEepm=1TVDQYEgCJLj-P-zFT0gKDEubz+qbxqD8i4hxiAjZRkw@mail.gmail.com>
	<CAJk1zg0MPjTL1=NQ4a3PcYnc6jzfk7ZqZ91Wn+Sam9EZmbEYMw@mail.gmail.com>
	<CAEepm=0kADK5inNf_KuemjX=HQ=PuTP0DykM--fO5jS5ePVFEA@mail.gmail.com>
	<CAFiTN-uhcNiaQK9aS0_REr=7YDwgDUU11uWE4mG7t_Rq7Y-GkA@mail.gmail.com>
	<CA+TgmoYWDCbVDy7KYCUuXOWLjC2FqPmrcEZP3dn+K4AsL4DkHA@mail.gmail.com>
	<CAFiTN-u7j1QSqaa54qJiA8o2C+21YMy6kgFk-TaaiFgLjU234A@mail.gmail.com>
	<CA+Tgmob8LFw55DzH1QEREpBEA9RJ_W_amhBFCVZ6WMwUhVpOqg@mail.gmail.com>

Robert Haas <robertmhaas@gmail.com> writes:
> That turned out to produce more than one problem.  I find that the
> select_parallel test then fails like this:
> ERROR:  could not find key 18446744073709486082 in shm TOC at 0x10be98040
> The fix for that problem seems to be:

>      /* Recreate error queues. */
>      error_queue_space =
> -        shm_toc_lookup(pcxt->toc, PARALLEL_KEY_ERROR_QUEUE, false);
> +        shm_toc_lookup(pcxt->toc, PARALLEL_KEY_ERROR_QUEUE, true);
> +    Assert(pcxt->nworkers == 0 || error_queue_space != NULL);

I happened across this patch while preparing the release notes, and
I'm quite distressed by it, because it completely breaks the point
of what I'd done in commit d46633506 (to wit, to not just blindly
assume, nor just Assert, that shm_toc_lookup always succeeds).
Do you mind if I change that Assert to a run-time test?

			regards, tom lane




view thread (21+ messages)  latest in thread

Message-ID: <3647.1517601675@sss.pgh.pa.us>
Permalink:  ../3647.1517601675@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/3647.1517601675@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, robertmhaas@gmail.com, dilipbalaut@gmail.com, thomas.munro@enterprisedb.com, jakub.glapa@gmail.com
  Subject: Re: ERROR: too many dynamic shared memory segments
  In-Reply-To: <3647.1517601675@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox