When Pgpool-II child is killed by SIGKILL signal, the SIGHLD handler
just emitted LOG level message as other signals. But SIGKILL is an
important event, for example killed by OOM killer. So emit a WARNING
level message instead.
Per suggestion from Michail Alexakis.
Discussion: https://www.pgpool.net/pipermail/pgpool-general/2021-October/007808.html
}
if (WIFSIGNALED(status))
{
- /* Child terminated by segmentation fault. Report it */
+ /* Child terminated by segmentation fault or sigkill. Report it */
if (WTERMSIG(status) == SIGSEGV)
ereport(WARNING,
(errmsg("%s process with pid: %d was terminated by segmentation fault", exiting_process_name, pid)));
+ else if (WTERMSIG(status) == SIGKILL)
+ ereport(WARNING,
+ (errmsg("%s process with pid: %d was terminated by sigkill", exiting_process_name, pid)));
else
ereport(LOG,
(errmsg("%s process with pid: %d exits with status %d by signal %d", exiting_process_name, pid, status, WTERMSIG(status))));