mirror of
https://github.com/troglobit/finit.git
synced 2026-10-23 11:44:37 +00:00
Fix restart logic of sysv start/stop scripts and forking services
Init script return pretty quickly after launch, so we cannot use that to detect if they, or the daemon they launched, have crashed. So we start the service_retry() with a 2 sec delay, which should be ample time to allow the pidfile plugin to detect a forking service's new PID. In release-cycle regression, no public issue needed. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
1 parent
50f2cbf600
commit
9b17ce0b7c
3 files changed
+33
-16
No files matched your search
@@ -98,6 +98,9 @@ static void pidfile_update_conds(char *dir, char *name, uint32_t mask)
|
||||
return;
|
||||
}
|
||||
|
||||
/* Service is not crashing, let's tell state machine! */
|
||||
service_forked(svc);
|
||||
|
||||
if (pid != svc->pid) {
|
||||
_d("Forking service %s changed PID from %d to %d",
|
||||
svc->cmd, svc->pid, pid);
|
||||
|
||||
Reference in new issue
Block a user