The following bug has been logged on the website:
Bug reference: 9721
Logged by: Daniel Hahler
Email address: postgresql@thequod.de
PostgreSQL version: 9.3.3
Operating system: Debian
Description:
PostgreSQL just failed to startup after a reboot (which was forced via
remote Ctrl-Alt-Delete on the PostgreSQL's containers host):
2014-03-24 13:32:47 CET LOG: could not receive data from client: Connection
reset by peer
2014-03-25 12:32:17 CET FATAL: no free slots in PMChildFlags array
2014-03-25 12:32:17 CET LOG: process 9975 releasing ProcSignal slot 108,
but it contains 0
2014-03-25 12:32:17 CET LOG: process 9974 releasing ProcSignal slot 109,
but it contains 0
2014-03-25 12:32:17 CET LOG: process 9976 releasing ProcSignal slot 110,
but it contains 0
I have found that the source code says that this should never happen:
/* Out of slots ... should never happen, else postmaster.c messed up */
elog(FATAL, "no free slots in PMChildFlags array");
Another attempt at starting it worked:
2014-03-25 12:38:43 CET LOG: database system was interrupted; last known up
at 2014-03-24 18:22:38 CET
2014-03-25 12:38:43 CET LOG: database system was not properly shut down;
automatic recovery in progress
2014-03-25 12:38:43 CET LOG: incomplete startup packet
2014-03-25 12:38:44 CET LOG: record with zero length at 0/7843020
2014-03-25 12:38:44 CET LOG: redo is not required
2014-03-25 12:38:44 CET LOG: autovacuum launcher started
2014-03-25 12:38:44 CET LOG: database system is ready to accept
connections
I am using 9.3.3-1.pgdg70+1 from http://apt.postgresql.org/pub/repos/apt/ on
a Debian Wheezy system, running in an OpenVZ container.
I have just now noticed that 9.3.4 has been released, and upgraded to it. I
am sorry if that's something that has been fixed in that update already.
Thanks!