Dequeue and Stop Jobs
Often we use the verb "stop" in a loose fashion, but in this section it is important to distinguish "dequeue" from "stop". Dequeuing only impacts scheduled jobs and leaves running jobs unaffected, while "stopping" really means killing jobs that are running.
Icon | Action | Description |
---|---|---|
![]() |
Dequeue | Dequeue a scheduled job, ineffective on a running job. |
![]() |
Stop | Dequeue a scheduled job and stop a running job. The job is stopped by sending in order the signals TERM HUP INT KILL until the job is no longer running. |
Control the Signals to Stop Jobs
Some jobs require specific signals to be delivered in order to be stopped cleanly. If you have such job, you can use the properties STOP_SIGNAL_LIST and STOP_SIGNAL_DELAY to control the stopping sequence.
# This works in 2013.09
J vw ./my_job_that_is_hard_to_stop some arguments
vtk_prop_set $make(transId) STOP_SIGNAL_LIST "HUP,USR1"
vtk_prop_set $make(transId) STOP_SIGNAL_DELAY "10s"
# This works in version 2014 and later
J vw ./my_job_that_is_hard_to_stop some arguments
P STOP_SIGNAL_LIST "HUP,USR1"
P STOP_SIGNAL_DELAY "10s"
Stop Jobs using the Browser Interface
You can stop the run by going to the Retraces page, finding the request you want, and stopping it by clicking on the Dequeue icon.
Stopping a run does not stop the jobs that are currently running on the taskers. Instead, it simply stops sending any more jobs to the taskers.
You can find all the /set/create?name=running&rule=isjob+STATUS==RETRACING and then selectively stop them by going to each job page, or you can go to the Tasker page and then stop the jobs running on each individual tasker.
- stopping all retracing requests with URL /retraces/stopall
- stopping all running jobs with URL /taskers/killjobs
Stop Jobs using the GUI
You can stop a run by clicking on taskers from the Tasker Monitor window, by right-clicking on the tasker. You can stop a job by right-clicking on the job in the Set Viewer and select Stop from the popup.
and then choosing the run. You can stop jobs andStop Jobs using the CLI
vovstop: Usage Message
DESCRIPTION:
Stop a list of objects. The jobs are normally descheduled,
but if the -f (-force) option is used, then also running jobs
are stopped.
USAGE:
% vovstop [options]
% vovstop [options] objectId ...
% vovstop [options] setName ...
OPTIONS:
Most options can be abbreviated to one character.
-help -- Print this message.
-q -- Quiet.
-s -- Quiet (same as -q).
-silent -- Quiet (same as -q).
-v -- Increase verbosity.
-f -- Stop running jobs also, same as -force
-force -- Stop running jobs also, same as -f
-running -- Stop running jobs ONLY, do not dequeue jobs
-dir <dirname> -- Stop jobs in a directory.
-subdirs <dirname> -- Stop jobs in a directory and all subdirs.
-downcone -- Stop also all jobs in the downcone
of the specified nodes.
-retraces -- Stop all current retrace requests.
-alljobs -- Stop all jobs.
-project -- Stop current project.
-signals <SIGLIST> -- Comma separated list of signals to send to the jobs
(default sequence is TERM,HUP,INT,KILL )
This can be also set with property NC_STOP_SIGNALS
or with the environment variables NC_STOP_SIGNALS
or VOV_STOP_SIGNALS.
Priority: 1. Option -signal
2. job property NC_STOP_SIGNALS,
STOP_SIGNALS
3. env variable VOV_STOP_SIGNALS,
NC_STOP_SIGNALS
4. default (can be configured as
defaultStopSignalCascade in policy.tcl)
See also: vovshow -env VOV_STOP_SIGNALS
vovshow -env NC_STOP_SIGNALS
-sig <SIGLIST> -- Same as -signals.
-exclude <PROCLIST> -- List of processes to exclude from receiving the
signal.
-include <PROCLIST> -- List of processes to receive the signal.
-delay <s> -- Minimum delay between signals (in seconds),
between 0 and 20s. Default is 3.
This can also be set with the property
NC_STOP_SIG_DELAY, or with the environment
variables NC_STOP_SIG_DELAY or
VOV_STOP_SIGNAL_DELAY. If both NC_STOP_SIG_DELAY
and VOV_STOP_SIGNAL_DELAY are present in the
environment, the value of NC_STOP_SIG_DELAY will
be used.
Priority: 1. Option -delay
2. job property NC_STOP_SIG_DELAY
3. env variable VOV_STOP_SIGNAL_DELAY,
NC_STOP_SIG_DELAY
4. default
-why <REASON> -- The reason why vovstop is being called. This gets
passed to the WHYSTATUS field and property if it
causes a status change.
The 'objectId' argument can refer to a: job, user, retrace, set,
bucket, or file
EXAMPLES:
% vovstop System:jobs -- Stop jobs in specified set.
% vovstop 00023456 -- Stop job by id.
The id refers to a job, set, retrace,
file, bucket, or user.
% vovstop -dir . -- Stop jobs in current dir.
% vovstop -subdirs . -- Stop jobs in current dir
and all subdirs.
% vovstop -alljobs
% vovstop -f -alljobs -- Stop and kill all jobs
% vovstop -f -signal HUP,TERM -- Send SIGHUP and SIGTERM to all jobs
% vovstop -f -include sleep -- Stop all "sleep" jobs
% vovstop -f -exclude sleep,ls -- Stop all jobs EXCEPT "sleep" and
"ls" jobs
% vovstop -retraces -why "The reason why all retraces were stopped"