Commit c528c42e authored by Vadim B. Mikheev's avatar Vadim B. Mikheev

More startup/shutdown log messages.

parent b1ec184d
......@@ -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)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment