pgsql: Perform an immediate shutdown if the postmaster.pid file is remo

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Perform an immediate shutdown if the postmaster.pid file is remo
Дата
Msg-id E1ZjZah-0007c9-Rf@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Perform an immediate shutdown if the postmaster.pid file is removed.

The postmaster now checks every minute or so (worst case, at most two
minutes) that postmaster.pid is still there and still contains its own PID.
If not, it performs an immediate shutdown, as though it had received
SIGQUIT.

The original goal behind this change was to ensure that failed buildfarm
runs would get fully cleaned up, even if the test scripts had left a
postmaster running, which is not an infrequent occurrence.  When the
buildfarm script removes a test postmaster's $PGDATA directory, its next
check on postmaster.pid will fail and cause it to exit.  Previously, manual
intervention was often needed to get rid of such orphaned postmasters,
since they'd block new test postmasters from obtaining the expected socket
address.

However, by checking postmaster.pid and not something else, we can provide
additional robustness: manual removal of postmaster.pid is a frequent DBA
mistake, and now we can at least limit the damage that will ensue if a new
postmaster is started while the old one is still alive.

Back-patch to all supported branches, since we won't get the desired
improvement in buildfarm reliability otherwise.

Branch
------
REL9_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/3d701277f8c90c3770f086093eaa5999e3ce6e95

Modified Files
--------------
src/backend/postmaster/postmaster.c |   58 ++++++++++++++++++++++-------
src/backend/utils/init/miscinit.c   |   70 +++++++++++++++++++++++++++++++++++
src/include/miscadmin.h             |    1 +
3 files changed, 115 insertions(+), 14 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Perform an immediate shutdown if the postmaster.pid file is remo
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Perform an immediate shutdown if the postmaster.pid file is remo