On 2013-10-30 09:26:42 -0400, Tom Lane wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
> > If I'm reading this correctly, the last three runs on frogmouth have
> > all failed, and all of them have failed with a complaint about,
> > specifically, Global/PostgreSQL.851401618. Now, that really shouldn't
> > be happening, because the code to choose that number looks like this:
>
> > dsm_control_handle = random();
>
> Isn't this complaining about the main shm segment, not a DSM extension?
Don't think so, that has a ":" in the name. But I think this touches a
fair point, I think we need to make all the dsm error messages more
distinctive. The history since this has been committed makes it likely
that there will be more errors.
> Also, why is the error "not enough space", rather than something about
> a collision? And if this is the explanation, why didn't the previous
> runs probing for allowable shmem size fail?
Yea, I don't think this explains the issue but something independent
that needs to be fixed.
> BTW, regardless of the specific properties of random(), surely you ought
> to have code in there that would cope with a name collision.
There actually is code that retries, but only for EEXISTS.
Greetings,
Andres Freund
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services