-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
When we kill a job because it is over time, over memory or has been cancelled, we want to send a sequence of different signals. Currently this is impemented for "over memory" and "over time" only and with two different mechanisms. "cancel job" currently sends SIGTERM only so that some jobs are not correctly terminated. Unify the mechanism in a state machine. The state is kept in two new fields `job_killstate` and `next_signal_time` in the servers job structures. We mimic the current kill sequences but add SIGKILL for canceled jobs after 30 seconds if they don't go away from SIGTERM. After we've sent an initial SIGKILL, we will continue to send more SIGKILLS to terminate any child we mioght have missed. The state machines uses ppidcache to send the signals to all descendants of the jobs host_pid (which is the pid of the reaper). With this commit, the state machine is added but not yet used.
- Loading branch information
Showing
3 changed files
with
159 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters