agora inbox for pgpool-committers@postgresql.org  
help / color / mirror / Atom feed
pgpool: Close listening sockets before forking.
5+ messages / 1 participants
[nested] [flat]

* pgpool: Close listening sockets before forking.
@ 2026-03-09 09:19 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 5+ messages in thread

From: Tatsuo Ishii @ 2026-03-09 09:19 UTC (permalink / raw)
  To: pgpool-committers@lists.postgresql.org

Close listening sockets before forking.

Previously, when pgpool main process forks sub processes (i.e. user
session process, pcp_main process, health check process, streaming
replication check process and life check process), they inherited
pgpool and/or pcp listening sockets. However some of processes do not
need those sockets:

- user session process - pcp sockets are unnecessary
- pcp main process - pgpool sockets are unnecessary
- health check, streaming replication check and life check process -
  pgpool and pcp sockets are unnecessary

The remaining listening sockets could be a potential problem when
those process go down. Since they may keep the listening sockets for a
while, it could be possible that it prevents next pgpool starting up
from binding those ports.

Let's close those unnecessary sockets after forking. For this purpose
new function close_listening_sockets() is introduced.

Discussion: https://www.postgresql.org/message-id/20260302.100028.1346768433787074248.ishii%40postgresql.org
Backpatch-through: v4.4

Branch
------
V4_4_STABLE

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=293e9cae90dc069af70cf24f1db51eae94092...

Modified Files
--------------
src/include/pool.h          | 13 ++++++++++++-
src/main/pgpool_main.c      | 36 ++++++++++++++++++++++++++++++++++++
src/watchdog/wd_lifecheck.c |  6 +++++-
3 files changed, 53 insertions(+), 2 deletions(-)



^ permalink  raw  reply  [nested|flat] 5+ messages in thread

* pgpool: Close listening sockets before forking.
@ 2026-03-09 09:19 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 5+ messages in thread

From: Tatsuo Ishii @ 2026-03-09 09:19 UTC (permalink / raw)
  To: pgpool-committers@lists.postgresql.org

Close listening sockets before forking.

Previously, when pgpool main process forks sub processes (i.e. user
session process, pcp_main process, health check process, streaming
replication check process and life check process), they inherited
pgpool and/or pcp listening sockets. However some of processes do not
need those sockets:

- user session process - pcp sockets are unnecessary
- pcp main process - pgpool sockets are unnecessary
- health check, streaming replication check and life check process -
  pgpool and pcp sockets are unnecessary

The remaining listening sockets could be a potential problem when
those process go down. Since they may keep the listening sockets for a
while, it could be possible that it prevents next pgpool starting up
from binding those ports.

Let's close those unnecessary sockets after forking. For this purpose
new function close_listening_sockets() is introduced.

Discussion: https://www.postgresql.org/message-id/20260302.100028.1346768433787074248.ishii%40postgresql.org
Backpatch-through: v4.4

Branch
------
V4_5_STABLE

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=5d522420ffe6c070dc81a16dbeee5ab33f6b9...

Modified Files
--------------
src/include/pool.h          | 13 ++++++++++++-
src/main/pgpool_main.c      | 36 ++++++++++++++++++++++++++++++++++++
src/watchdog/wd_lifecheck.c |  6 +++++-
3 files changed, 53 insertions(+), 2 deletions(-)



^ permalink  raw  reply  [nested|flat] 5+ messages in thread

* pgpool: Close listening sockets before forking.
@ 2026-03-09 09:19 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 5+ messages in thread

From: Tatsuo Ishii @ 2026-03-09 09:19 UTC (permalink / raw)
  To: pgpool-committers@lists.postgresql.org

Close listening sockets before forking.

Previously, when pgpool main process forks sub processes (i.e. user
session process, pcp_main process, health check process, streaming
replication check process and life check process), they inherited
pgpool and/or pcp listening sockets. However some of processes do not
need those sockets:

- user session process - pcp sockets are unnecessary
- pcp main process - pgpool sockets are unnecessary
- health check, streaming replication check and life check process -
  pgpool and pcp sockets are unnecessary

The remaining listening sockets could be a potential problem when
those process go down. Since they may keep the listening sockets for a
while, it could be possible that it prevents next pgpool starting up
from binding those ports.

Let's close those unnecessary sockets after forking. For this purpose
new function close_listening_sockets() is introduced.

Discussion: https://www.postgresql.org/message-id/20260302.100028.1346768433787074248.ishii%40postgresql.org
Backpatch-through: v4.4

Branch
------
V4_6_STABLE

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=552c40db73f3e0d65ea038f2ca0780afd1efd...

Modified Files
--------------
src/include/pool.h          | 13 ++++++++++++-
src/main/pgpool_main.c      | 36 ++++++++++++++++++++++++++++++++++++
src/watchdog/wd_lifecheck.c |  6 +++++-
3 files changed, 53 insertions(+), 2 deletions(-)



^ permalink  raw  reply  [nested|flat] 5+ messages in thread

* pgpool: Close listening sockets before forking.
@ 2026-03-09 09:19 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 5+ messages in thread

From: Tatsuo Ishii @ 2026-03-09 09:19 UTC (permalink / raw)
  To: pgpool-committers@lists.postgresql.org

Close listening sockets before forking.

Previously, when pgpool main process forks sub processes (i.e. user
session process, pcp_main process, health check process, streaming
replication check process and life check process), they inherited
pgpool and/or pcp listening sockets. However some of processes do not
need those sockets:

- user session process - pcp sockets are unnecessary
- pcp main process - pgpool sockets are unnecessary
- health check, streaming replication check and life check process -
  pgpool and pcp sockets are unnecessary

The remaining listening sockets could be a potential problem when
those process go down. Since they may keep the listening sockets for a
while, it could be possible that it prevents next pgpool starting up
from binding those ports.

Let's close those unnecessary sockets after forking. For this purpose
new function close_listening_sockets() is introduced.

Discussion: https://www.postgresql.org/message-id/20260302.100028.1346768433787074248.ishii%40postgresql.org
Backpatch-through: v4.4

Branch
------
V4_7_STABLE

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=9f918c15e9ecd34e7a3a5f6b16c7ecd6cc2d4...

Modified Files
--------------
src/include/pool.h          | 13 +++++++++++--
src/main/pgpool_main.c      | 37 +++++++++++++++++++++++++++++++++++++
src/watchdog/wd_lifecheck.c |  6 +++++-
3 files changed, 53 insertions(+), 3 deletions(-)



^ permalink  raw  reply  [nested|flat] 5+ messages in thread

* pgpool: Close listening sockets before forking.
@ 2026-03-09 09:19 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 5+ messages in thread

From: Tatsuo Ishii @ 2026-03-09 09:19 UTC (permalink / raw)
  To: pgpool-committers@lists.postgresql.org

Close listening sockets before forking.

Previously, when pgpool main process forks sub processes (i.e. user
session process, pcp_main process, health check process, streaming
replication check process and life check process), they inherited
pgpool and/or pcp listening sockets. However some of processes do not
need those sockets:

- user session process - pcp sockets are unnecessary
- pcp main process - pgpool sockets are unnecessary
- health check, streaming replication check and life check process -
  pgpool and pcp sockets are unnecessary

The remaining listening sockets could be a potential problem when
those process go down. Since they may keep the listening sockets for a
while, it could be possible that it prevents next pgpool starting up
from binding those ports.

Let's close those unnecessary sockets after forking. For this purpose
new function close_listening_sockets() is introduced.

Discussion: https://www.postgresql.org/message-id/20260302.100028.1346768433787074248.ishii%40postgresql.org
Backpatch-through: v4.4

Branch
------
master

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=18f7f632de982d8fb5d0da2f2fdc48e26ac46...

Modified Files
--------------
src/include/pool.h          | 13 +++++++++++--
src/main/pgpool_main.c      | 37 +++++++++++++++++++++++++++++++++++++
src/watchdog/wd_lifecheck.c |  6 +++++-
3 files changed, 53 insertions(+), 3 deletions(-)



^ permalink  raw  reply  [nested|flat] 5+ messages in thread


end of thread, other threads:[~2026-03-09 09:19 UTC | newest]

Thread overview: 5+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-03-09 09:19 pgpool: Close listening sockets before forking. Tatsuo Ishii <ishii@postgresql.org>
2026-03-09 09:19 pgpool: Close listening sockets before forking. Tatsuo Ishii <ishii@postgresql.org>
2026-03-09 09:19 pgpool: Close listening sockets before forking. Tatsuo Ishii <ishii@postgresql.org>
2026-03-09 09:19 pgpool: Close listening sockets before forking. Tatsuo Ishii <ishii@postgresql.org>
2026-03-09 09:19 pgpool: Close listening sockets before forking. Tatsuo Ishii <ishii@postgresql.org>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox