postgresql/src/test/postmaster
Heikki Linnakangas bb861414fe Kill dead-end children when there's nothing else left
Previously, the postmaster would never try to kill dead-end child
processes, even if there were no other processes left. A dead-end
backend will eventually exit, when authentication_timeout expires, but
if a dead-end backend is the only thing that's preventing the server
from shutting down, it seems better to kill it immediately. It's
particularly important, if there was a bug in the early startup code
that prevented a dead-end child from timing out and exiting normally.

Includes a test for that case where a dead-end backend previously
prevented the server from shutting down.

Reviewed-by: Andres Freund <andres@anarazel.de>
Discussion: https://www.postgresql.org/message-id/a102f15f-eac4-4ff2-af02-f9ff209ec66f@iki.fi
2024-11-14 16:12:04 +02:00
..
t Kill dead-end children when there's nothing else left 2024-11-14 16:12:04 +02:00
.gitignore Silence assorted annoying test output. 2024-10-08 14:13:01 -04:00
Makefile
meson.build Kill dead-end children when there's nothing else left 2024-11-14 16:12:04 +02:00
README

src/test/postmaster/README

Regression tests for postmaster
===============================

This directory contains a test suite for postmaster's handling of
connections, connection limits, and startup/shutdown sequence.


Running the tests
=================

NOTE: You must have given the --enable-tap-tests argument to configure.

Run
    make check
or
    make installcheck
You can use "make installcheck" if you previously did "make install".
In that case, the code in the installation tree is tested.  With
"make check", a temporary installation tree is built from the current
sources and then tested.

Either way, this test initializes, starts, and stops a test Postgres
cluster.

See src/test/perl/README for more info about running these tests.