Thread: BUG #4744: Windows 2008: FATAL: could not reattach to shared memory: 487

The following bug has been logged online:

Bug reference:      4744
Logged by:          grouvi
Email address:      ghr@sylob.com
PostgreSQL version: 8.3.7
Operating system:   Windows Server 2008 Standard SP1
Description:        Windows 2008: FATAL:  could not reattach to shared
memory: 487
Details:

I have the following messages in logs.

2009-04-01 07:01:05 CEST Tx[0] cmd[] PID[2224] DB[] WARNING:  worker took
too long to start; cancelled
FATAL:  could not reattach to shared memory (key=288, addr=01FF0000): 487


I have no antivirus software nor anti-spyware, nor Firewall.
Windows firewall is inactive.


What is my problem ?
Does PostgreSQL 8.3 work on Windows 2008 ?

Thanks in advance.

Re: BUG #4744: Windows 2008: FATAL: could not reattach to shared memory: 487

From
Alvaro Herrera
Date:
grouvi wrote:

> I have the following messages in logs.
>
> 2009-04-01 07:01:05 CEST Tx[0] cmd[] PID[2224] DB[] WARNING:  worker took
> too long to start; cancelled
> FATAL:  could not reattach to shared memory (key=288, addr=01FF0000): 487

"worker took too long" is an autovacuum launcher message.  It's saying
that it tried to start a worker, but it never did.  If the FATAL message
is occuring earlier than the other one, it's possible that it's the
worker failing to start.  (Note that if there's a lot of work for
autovac to do, it will try to start a new worker as soon as it detects
that the old one has failed to start.  So it's quite likely that you'd
see the WARNING first immediately followed by the FATAL message.  In
fact I'd expect exactly this behavior -- this pair of messages showing
up fairly regularly, perhaps almost exactly every autovacuum_naptime
seconds.)

As for the actual problem, "could not reattach to shared memory", that's
a Windows problem that has been reported before, and there has been some
investigation about it and how to fix it, but nothing conclusive has
been found as far as I know.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

Re: BUG #4744: Windows 2008: FATAL: could not reattach to shared memory: 487

From
"Ghislain ROUVIGNAC"
Date:
Hello,=20



I made some further investigations.


It seems that my problem was related with my new server hostname.
He was named ctrl_cochise which does not conform to standards.
After renaming to ctrlcochise I have not been able to reproduce my problems.



Something strange is that I was not able to reproduce the problem with
autovacuum turned off.
While when autovacuum was on, autocvacuum produced errors and sometimes my
scripts crashed too with "could not reattach to shared memory (key=3D288,
addr=3D01FF0000): 487" error too.


I keep my server under heavy check for some days and if everything goes fine
il will consider this problem as closed.


Thanks.



Cordialement,
Ghislain ROUVIGNAC
ghr@sylob.com

=A0=A0=20
Editeur-Int=E9grateur de solutions ERP

7 rue Marcel Dassault - Z.A. La Mouline - 81990 Cambon d'Albi - FRANCE
T=E9l : (+33) (0)5 63 53 08 18 - Fax : (+33) (0)5 63 53 07 42 - www.sylob.c=
om
Hot line : (+33) (0)5 63 53 78 35 - mailto:support@sylob.com
Entreprise certifi=E9e ISO 9001 version 2000 par le BVQI.=20

-----Message d'origine-----
De=A0: Alvaro Herrera [mailto:alvherre@commandprompt.com]=20
Envoy=E9=A0: mercredi 1 avril 2009 14:05
=C0=A0: grouvi
Cc=A0: pgsql-bugs@postgresql.org
Objet=A0: Re: [BUGS] BUG #4744: Windows 2008: FATAL: could not reattach to
shared memory: 487

grouvi wrote:

> I have the following messages in logs.
>=20
> 2009-04-01 07:01:05 CEST Tx[0] cmd[] PID[2224] DB[] WARNING:  worker took
> too long to start; cancelled
> FATAL:  could not reattach to shared memory (key=3D288, addr=3D01FF0000):=
 487

"worker took too long" is an autovacuum launcher message.  It's saying
that it tried to start a worker, but it never did.  If the FATAL message
is occuring earlier than the other one, it's possible that it's the
worker failing to start.  (Note that if there's a lot of work for
autovac to do, it will try to start a new worker as soon as it detects
that the old one has failed to start.  So it's quite likely that you'd
see the WARNING first immediately followed by the FATAL message.  In
fact I'd expect exactly this behavior -- this pair of messages showing
up fairly regularly, perhaps almost exactly every autovacuum_naptime
seconds.)

As for the actual problem, "could not reattach to shared memory", that's
a Windows problem that has been reported before, and there has been some
investigation about it and how to fix it, but nothing conclusive has
been found as far as I know.

--=20
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support