Peter Humphrey <pe...@prh.myzen.co.uk> writes:

However - stopping boinc still takes 60 seconds, with the differencec that I don't now see the trail of dots to show me how much longer I
have to wait.

Is that period hard-coded into the start/stop mechanism of openrc?

i assume that might be a result of the default value for the $retry variable being "SIGTERM/60/SIGTERM/30/SIGKILL/30"; refer to line 48 of boinc.init, inside the env_check() function, which sets $retry to that value if it's not otherwise specified. The man page for openrc-run(8) says:

retry    Retry schedule to use when stopping the daemon. It can
         either be a timeout in seconds or multiple
         signal/timeout pairs (like SIGTERM/5).

but doesn't explain what it means to have two different pairs for the same signal, as above. (Nor does https://github.com/OpenRC/openrc/blob/master/service-script-guide.md seem to have any relevant information in this regard.)

If you set `retry` in boinc.conf to, say, "SIGTERM/10/SIGKILL/20", for a 10-second timeout in response to a SIGTERM signal and a 20-second timeout in response to a SIGKILL signal, does that reduce the stopping time? If so, to what duration? Hopefully setting different timeout periods for different signals will mean we can deduce what signals are being received from the stopping duration. Even if it does, it's a concern that the timeout limit is being reached; it suggests that the boinc service isn't shutting down gracefully in response to a SIGTERM, even after 60 seconds, resulting in it needing to be forcefully terminated.


Alexis.

Reply via email to