Re: FATAL: could not reattach to shared memory (Win32) - Mailing list pgsql-general

From Tom Lane
Subject Re: FATAL: could not reattach to shared memory (Win32)
Date
Msg-id 4696.1187984850@sss.pgh.pa.us
Whole thread Raw
In response to Re: FATAL: could not reattach to shared memory (Win32)  (Shelby Cain <alyandon@yahoo.com>)
List pgsql-general
Shelby Cain <alyandon@yahoo.com> writes:
> Assuming this is an issue with shared libraries, I think it would have more=
>  to do with the way Windows resolves address conflicts on process startup t=
> han anything caused by explicit calls to LoadLibrary().  Looking at postgre=
> s.exe with the dependency viewer from Visual Studio 6, I see that the follo=
> wing shared library dependencies embedded in the executable image that havi=
> ng conflicting base addresses.  If I'm not mistaken, Windows will automatic=
> ally relocate these libraries prior to actual code execution so there would=
>  be no opportunity for that particular instance of postgres.exe to map the =
> shared memory if the address space is already in use by a relocated dll.

But the shmem was originally allocated in the postmaster process, which
is the identical executable with the identical set of linked-in DLLs.
So it's really unclear why the child processes would be unable to
reattach at the same address.

            regards, tom lane

pgsql-general by date:

Previous
From: Bill Thoen
Date:
Subject: Re: PG Seg Faults Performing a Query
Next
From: Tom Lane
Date:
Subject: Re: PG Seg Faults Performing a Query