Discussion:
Linux: ps output shows multiple instances of PostgreSQL running on the same port
(too old to reply)
David Throckmorton
2012-09-18 00:38:48 UTC
Permalink
Following a recent database crash, I encountered the following when doing
debug:

[***@my-db myhost]# ps -ef | grep pgsql
postgres 19643 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19644 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19657 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19658 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data

pgstartup.log doesn't indicate anything about multiple instances starting,
and indicates that PID 5737 was the initial PID for the instance:

# cat pgstartup.log
2012-09-07 08:01:33 MDT [5737]

Not to mention the fact that a whole series of things would have to go
wrong to have PostgreSQL listening on the same port and different PIDs - so
many I can't even imagine it.

So I'm wondering if this has even been seen before (and/or whether I'm just
chasing windmills here).

Environment:
OS: CentOS 5 - 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011
x86_64 x86_64 x86_64 GNU/Linux
PostgreSQL Version: psql (9.0.4)

Thanks.
Tom Lane
2012-09-18 01:36:34 UTC
Permalink
Post by David Throckmorton
Following a recent database crash, I encountered the following when doing
postgres 19643 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19644 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19657 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
postgres 19658 5737 0 09:42 ? 00:00:00
/usr/pgsql-9.0/bin/postmaster -p 5432 -D /var/lib/pgsql/9.0/data
pgstartup.log doesn't indicate anything about multiple instances starting,
Almost certainly, these are just regular postmaster child processes.
I'm not sure why "ps" is showing you the original postmaster command
line rather than the usual modified process title --- that's a known
behavior on some Unixen but I've not heard of it on Linux. Are you
using a nonstandard flavor of "ps"?

Also, is process 5737 still around? If it was dead, I would rather
expect ps to show the orphaned processes as children of pid 1.
If it is around, what is ps showing as its command line? Can you
connect to the database?

regards, tom lane
--
Sent via pgsql-admin mailing list (pgsql-***@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin
Loading...