Zeus currently terminates processes by sending SIGKILL. This doesn't allow them to clean up after themselves in any way. It would be nice to avoid SIGKILL entirely and force children to behave but to avoid backwards incompatibility we can send SIGTERM followed by SIGKILL if the process never exits.
In addition to the normal test suite, I tested changing the SIGTERM to a syscall.Signal(0), confirmed that the tests timeout and then pass when I change the SIGKILL timeout to 1ms.
Zeus currently terminates processes by sending SIGKILL. This doesn't allow them to clean up after themselves in any way. It would be nice to avoid SIGKILL entirely and force children to behave but to avoid backwards incompatibility we can send SIGTERM followed by SIGKILL if the process never exits.
In addition to the normal test suite, I tested changing the
SIGTERM
to asyscall.Signal(0)
, confirmed that the tests timeout and then pass when I change the SIGKILL timeout to 1ms.