Re: BUG #5007: could not reattach to shared memory - Mailing list pgsql-bugs

From Paragon Corporation
Subject Re: BUG #5007: could not reattach to shared memory
Date
Msg-id 1BEB09BE0A3544CAA0D11FC51B5AB3BA@H
Whole thread Raw
In response to BUG #5007: could not reattach to shared memory  ("Regina" <lr@pcorp.us>)
List pgsql-bugs
Magnus and Craig,

Thanks for the help.  We upgraded and also put in the patch and things have
been running for about a week now with all that in place. The reattach
memory problem seems to have been cured by the patch.

Unfortunately the System.OutOfMemory from .NET and the LOG:  could not
receive data from client: Unknown winsock error 10061 in postgresql logs
still persist.  I suspect the log error is just because the .NET app dies
and abruptly disconnects its connection to PostgreSQL when it runs out of
memory.

I think I have ruled out PostgreSQL as the culprit here since I was able to
successfully run the same query and dump out to shape with pgsql2shp command
line.  Looking at the .NET code, I think its just because they are trying to
load the large query data into a DataSet object before dumping to shape file
so can't really blame npgsql for that either.  I think they'll just have to
switch to use a Datareader instead or do a Process call to call pgsql2shp.

Thanks,
Regina

-----Original Message-----
From: Magnus Hagander [mailto:magnus@hagander.net]
Sent: Tuesday, August 25, 2009 2:18 AM
To: Craig Ringer
Cc: Regina; pgsql-bugs@postgresql.org
Subject: Re: [BUGS] BUG #5007: could not reattach to shared memory

On Tuesday, August 25, 2009, Craig Ringer <craig@postnewspapers.com.au>
wrote:
> On Tue, 2009-08-25 at 05:44 +0000, Regina wrote:
>> The following bug has been logged online:
>>
>> Bug reference: =A0 =A0 =A05007
>> Logged by: =A0 =A0 =A0 =A0 =A0Regina
>> Email address: =A0 =A0 =A0lr@pcorp.us
>> PostgreSQL version: 8.3.6
>> Operating system: =A0 Windows 2008 Server Standard
>> Description: =A0 =A0 =A0 =A0could not reattach to shared memory
>> Details:
>>
>> One of our clients is getting the following error in their PostgreSQL
>> 8.3.6 logs in their http://ASP.NET application. =A0This only happens if=
=20
>> their application runs a long query (which they dump out to disk and=20
>> disk size (ESRI
>> shapefiles) is generally above 70 mb or more) when this fails.
>>
>> The error is below:
>> FATAL: =A0could not reattach to shared memory (key=3D232, addr=3D01DF000=
0):=20
>> 487 %t WARNING: =A0worker took too long to start; cancelled
>
> Search the -general mailing list archives for "reattach to shared=20
> memory". The issue has been around for a while but until recently=20
> nobody could reproduce it well enough to isolate it and test possible
fixed.
> You'll see some recent discussion and a proposed patch.
>
> Try upgrading to the latest version in the 8.3 series. If you still=20
> see the problem please follow up here, or try the patch for the issuye=20
> proposed on the pgsql-general list.

The probable fix is not in a released version - it will be in the next one.
Please try to upgrade to the latest and then replace postgres.exe with the
one from http://blog.hagander.net ad let us know if it works in your
situation.

>
>> In these cases their .NET app returns this error Exception of type=20
>> 'System.OutOfMemoryException' was thrown
>
> That's probably a bug in their application caused by failure to=20
> properly handle a connection problem.

Yes, or possibly npgsql having the bug, though I haven't heard of it there.
The stacktrace should probably tell you where - if not, a memory dump with
the debugger.

/Magnus


--
 Magnus Hagander
 Me: http://www.hagander.net/
 Work: http://www.redpill-linpro.com/

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #5010: perl iconv function returns ? character
Next
From: Lampa
Date:
Subject: Re: BUG #5010: perl iconv function returns ? character