BUG/MINOR: systemd: propagate the correct signal to haproxy
Some people report that sometimes there's a collection of old processes
after a restart of the systemd wrapper. It's not surprizing when reading
the code, the SIGTERM is propagated as a SIGINT which asks for a graceful
stop instead. If people ask for termination, we should terminate.
(cherry picked from commit 6c2f7955e7300fb2cf0596fa5210cdeb3a2aea5f)
(cherry picked from commit 502674bb0856618b227b57604f14298b8f3ad29d)
diff --git a/src/haproxy-systemd-wrapper.c b/src/haproxy-systemd-wrapper.c
index 7af5759..ad74e0e 100644
--- a/src/haproxy-systemd-wrapper.c
+++ b/src/haproxy-systemd-wrapper.c
@@ -147,7 +147,7 @@
if (pid > 0) {
fprintf(stderr, SD_DEBUG "haproxy-systemd-wrapper: %s -> %d.\n",
sig == SIGTERM ? "SIGTERM" : "SIGINT", pid);
- kill(pid, SIGINT);
+ kill(pid, sig);
free(pid_strv[i]);
}
}