From ab9f4d722e8f261ed748e02582b91a97ffd7bdfc Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Mon, 10 Oct 2016 13:16:01 +1100 Subject: [PATCH] ctdb-scripts: ctdbd_wrapper should never remove the PID file kill_ctdbd() kills the daemon and then removes the PID file. This is racy because a new daemon could write a new PID file in between the kill and the removal. Reversing these steps would be an improvement. However, none of the places where kill_ctdbd() is called is a safe place to remove the PID file. There is always a chance that a new daemon could start, write a new PID file and then kill_ctdbd() could remove the new PID file. ctdbd is able to overwrite a stale PID file by checking to see if it is locked. Therefore, entirely drop removal of the PID file from ctdbd_wrapper. BUG: https://bugzilla.samba.org/show_bug.cgi?id=12287 Signed-off-by: Martin Schwenke Reviewed-by: Volker Lendecke (cherry picked from commit 56d526c6ea3150a19dd0762b45d23a7c5f96d260) --- ctdb/config/ctdbd_wrapper | 1 - 1 file changed, 1 deletion(-) diff --git a/ctdb/config/ctdbd_wrapper b/ctdb/config/ctdbd_wrapper index cdf0304..bfc91f7 100755 --- a/ctdb/config/ctdbd_wrapper +++ b/ctdb/config/ctdbd_wrapper @@ -185,7 +185,6 @@ kill_ctdbd () if [ -n "$_session" ] ; then pkill -9 -s "$_session" 2>/dev/null - rm -f "$pidfile" fi } -- 2.9.3