multiple postgres processes after establishing tcp connection

Started by Andrey Lizenkoover 10 years ago2 messagesgeneral
Jump to latest
#1Andrey Lizenko
lizenko79@gmail.com

Hello,
PostgreSQL 9.4.4 started in usual way

[postgres@ubuntu12-vm][20150731 06:26:06]:/db2/master$ pg_ctl start -D
/db2/master/ -l serverlog
server starting

I can see root process for this then:

[postgres@ubuntu12-vm][20150731 06:38:36]:/db2/master$ ps -ef | grep
"bin/postgres" | grep -v grep
postgres 5152 1 0 06:28 pts/0 00:00:00
/opt/postgres/9.4.4/bin/postgres -D /db2/master

If only simple telnet connection started:

[postgres@ubuntu12-vm][20150731 06:30:24]:/db2$ telnet 127.0.0.1 5551
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

new postgres process appeared as a child of the first one.

[postgres@ubuntu12-vm][20150731 06:38:42]:/db2/master$ ps -ef | grep
"bin/postgres" | grep -v grep
postgres 5152 1 0 06:28 pts/0 00:00:00
/opt/postgres/9.4.4/bin/postgres -D /db2/master
postgres 6358 5152 0 06:39 ? 00:00:00
/opt/postgres/9.4.4/bin/postgres -D /db2/master

Is this an attempt to create new worker?
No records (presumably) in pg_stat_activity, only "invalid length of
startup packet" after closing telnet session.

--
Regards, Andrey Lizenko

#2Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Andrey Lizenko (#1)
Re: multiple postgres processes after establishing tcp connection

On 7/31/15 5:52 AM, Andrey Lizenko wrote:

If only simple telnet connection started:

[postgres@ubuntu12-vm][20150731 06:30:24]:/db2$ telnet 127.0.0.1 5551
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

new postgres process appeared as a child of the first one.

[postgres@ubuntu12-vm][20150731 06:38:42]:/db2/master$ ps -ef | grep
"bin/postgres" | grep -v grep
postgres 5152 1 0 06:28 pts/0 00:00:00
/opt/postgres/9.4.4/bin/postgres -D /db2/master
postgres 6358 5152 0 06:39 ? 00:00:00
/opt/postgres/9.4.4/bin/postgres -D /db2/master

Is this an attempt to create new worker?
No records (presumably) in pg_stat_activity, only "invalid length of
startup packet" after closing telnet session.

To be expected. There's a bunch of startup stuff that happens before a
backend shows up in pg_stat_activity. See BackendStartup() for details.
In particular, BackendInitialize() is what collects the startup packet
from the port before calling BackendRun() which calls PostgresMain()
which is what finally registers the backend in the proc array.
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Data in Trouble? Get it in Treble! http://BlueTreble.com

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general