Closed mbiebl closed 6 years ago
This is by design only logged but not propagated: after all if something fails the assumption is that the state afterwards is as before (or at least half-way to the goal). However, this is not the case for systemd services: if ExecStop= fails our fallback logic will apply, i.e. we'll kill all left-over processes on our own.
Propagation would also mean we'd cause shutdown transactions to fail, if any of the ExecStop= commands fail, and that's also not desirable.
Or to say this differently: stopping something must be reliable, and so it we make it so. Under no circumstances we should permit getting rid of something to fail. This doesn't relieve us from logging bout this (and we do), but it means that ExecStop= failing must be reacted upon right away, and fallback logic must beused to achieve the goal.
Starting things and stopping things in this regard are very different: that a service started properly we should only assume when everything went smoothly. But for stopping stuff, the goal matters, not the way there.
Hence, I don't think there's anything to fix here... This really works as intended.
(A long time ago, systemd allowed stop jobs to fail due to issues like this, btw. But we changed that out of the thinking explained above)
Submission type
systemd version the issue has been seen with
v238
Used distribution
Debian Downstream bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=792045
It seems that a failure on stop is not propaged to systemctl. A minimal test case