Autokill of Jobs by vovtasker

If a job has the autokill field set to a positive value, the job will be killed by vovtasker/vovtasker if its duration exceeds the autokill value. The autokill field can be applied to any job of which the status is not Failed or Done.

The check for this condition is done by vovtasker every minute. This frequency is controlled by the "tasker update" value).

If a job is to be auto-killed, the vovtasker can use one of three methods:
  • Direct: the tasker sends to the job the signal KILL. This is the default method.
  • NC STOP: the tasker calls nc stop JOBID; this only works for tasker that are running within Accelerator; this method honors the values of NC_STOP_SIGNALS and NC_STOP_SIG_DELAY.
  • VOVSTOP : the tasker calls vovstop -f JOBID to kill the job.

The method used to autokill the jobs can be controlled on each tasker, meaning that all jobs on that tasker, if they need to be autokilled, will be killed with the same method.

Currently there is one way to change the autokill method on a tasker, and that is with this magic incantation:
% vovsh -x 'vtk_tasker_config TASKERNAME_OR_ID autokillmethod VALUE' 
where VALUE can be one of the following keywords:
  • direct
  • ncstop
  • vovstop

In reality, only the first letter of the keyword is used, i.e. 'd', 'n', 'v'. Anything else maps silently to 'direct'.

Examples:
% vovsh -x 'vtk_tasker_config lnx0123 autokillmethod ncstop'
% vovsh -x 'vtk_tasker_config lnx0123 autokillmethod n'
% vovsh -x 'vtk_tasker_config 00234567 autokillmethod direct'