From c528c42ec29dace8e3e33f6574dd3d63bf8f536a Mon Sep 17 00:00:00 2001 From: "Vadim B. Mikheev" Date: Fri, 8 Oct 1999 02:16:22 +0000 Subject: [PATCH] More startup/shutdown log messages. --- src/backend/postmaster/postmaster.c | 53 +++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 10 deletions(-) diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 7e984f1027..433dc910c0 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.122 1999/10/06 22:44:25 vadim Exp $ + * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.123 1999/10/08 02:16:22 vadim Exp $ * * NOTES * @@ -169,10 +169,12 @@ static int MaxBackends = DEF_MAXBACKENDS; * semaphores, even if you never actually use that many backends. */ -static int NextBackendTag = MAXINT; /* XXX why count down not up? */ -static char *progname = (char *) NULL; -static char **real_argv; -static int real_argc; +static int NextBackendTag = MAXINT; /* XXX why count down not up? */ +static char *progname = (char *) NULL; +static char **real_argv; +static int real_argc; + +static time_t tnow; /* * Default Values @@ -1208,6 +1210,9 @@ pmdie(SIGNAL_ARGS) if (Shutdown >= SmartShutdown) return; Shutdown = SmartShutdown; + tnow = time(NULL); + fprintf(stderr, "Smart Shutdown request at %s", ctime(&tnow)); + fflush(stderr); if (DLGetHead(BackendList)) /* let reaper() handle this */ return; /* @@ -1230,11 +1235,18 @@ pmdie(SIGNAL_ARGS) */ if (Shutdown >= FastShutdown) return; + tnow = time(NULL); + fprintf(stderr, "Fast Shutdown request at %s", ctime(&tnow)); + fflush(stderr); if (DLGetHead(BackendList)) /* let reaper() handle this */ { Shutdown = FastShutdown; if (!FatalError) + { + fprintf(stderr, "Aborting any active transaction...\n"); + fflush(stderr); SignalChildren(SIGTERM); + } return; } if (Shutdown > NoShutdown) @@ -1261,6 +1273,9 @@ pmdie(SIGNAL_ARGS) * abort all children with SIGUSR1 and exit without * attempt to properly shutdown data base system. */ + tnow = time(NULL); + fprintf(stderr, "Immediate Shutdown request at %s", ctime(&tnow)); + fflush(stderr); if (ShutdownPID > 0) kill(ShutdownPID, SIGQUIT); else if (StartupPID > 0) @@ -1308,7 +1323,11 @@ reaper(SIGNAL_ARGS) if (pid != ShutdownPID) abort(); if (exitstatus != 0) - abort(); + { + fprintf(stderr, "Shutdown failed - abort\n"); + fflush(stderr); + proc_exit(1); + } proc_exit(0); } if (StartupPID > 0) @@ -1316,7 +1335,11 @@ reaper(SIGNAL_ARGS) if (pid != StartupPID) abort(); if (exitstatus != 0) - abort(); + { + fprintf(stderr, "Startup failed - abort\n"); + fflush(stderr); + proc_exit(1); + } StartupPID = 0; FatalError = false; if (Shutdown > NoShutdown) @@ -1341,9 +1364,11 @@ reaper(SIGNAL_ARGS) return; if (StartupPID > 0 || ShutdownPID > 0) return; - if (DebugLvl) - fprintf(stderr, "%s: CleanupProc: reinitializing shared memory and semaphores\n", - progname); + tnow = time(NULL); + fprintf(stderr, "Server processes were terminated at %s" + "Reinitializing shared memory and semaphores\n", + ctime(&tnow)); + fflush(stderr); shmem_exit(0); reset_shared(PostPortName); StartupPID = StartupDataBase(); @@ -1410,6 +1435,14 @@ CleanupProc(int pid, return; } + if (!FatalError) + { + tnow = time(NULL); + fprintf(stderr, "Server process (pid %d) exited with status %d at %s" + "Terminating any active server processes...\n", + pid, exitstatus, ctime(&tnow)); + fflush(stderr); + } FatalError = true; curr = DLGetHead(BackendList); while (curr) -- 2.40.0