aa94fd0e318e76497a2cd67acb0f73e5e396a11d
[feed/packages.git] / net / haproxy / patches / 0001-BUG-MEDIUM-systemd-set-KillMode-to-mixed.patch
1 From 1f24e3fee3aba83fb3338d17589d0ad0f34f6c73 Mon Sep 17 00:00:00 2001
2 From: Apollon Oikonomopoulos <apoikos@debian.org>
3 Date: Wed, 8 Oct 2014 15:14:41 +0300
4 Subject: [PATCH 1/2] BUG/MEDIUM: systemd: set KillMode to 'mixed'
5
6 By default systemd will send SIGTERM to all processes in the service's
7 control group. In our case, this includes the wrapper, the master
8 process and all worker processes.
9
10 Since commit c54bdd2a the wrapper actually catches SIGTERM and survives
11 to see the master process getting killed by systemd and regard this as
12 an error, placing the unit in a failed state during "systemctl stop".
13
14 Since the wrapper now handles SIGTERM by itself, we switch the kill mode
15 to 'mixed', which means that systemd will deliver the initial SIGTERM to
16 the wrapper only, and if the actual haproxy processes don't exit after a
17 given amount of time (default: 90s), a SIGKILL is sent to all remaining
18 processes in the control group. See systemd.kill(5) for more
19 information.
20
21 This should also be backported to 1.5.
22 (cherry picked from commit 74f016985ab1fa7a6a5afa301d982e77eba9c96a)
23 ---
24 contrib/systemd/haproxy.service.in | 1 +
25 1 file changed, 1 insertion(+)
26
27 diff --git a/contrib/systemd/haproxy.service.in b/contrib/systemd/haproxy.service.in
28 index 1a3d2c0..0bc5420 100644
29 --- a/contrib/systemd/haproxy.service.in
30 +++ b/contrib/systemd/haproxy.service.in
31 @@ -5,6 +5,7 @@ After=network.target
32 [Service]
33 ExecStart=@SBINDIR@/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
34 ExecReload=/bin/kill -USR2 $MAINPID
35 +KillMode=mixed
36 Restart=always
37
38 [Install]
39 --
40 1.8.5.5
41