modify-jobs

Modify attributes of a job that has not been released to the batch system.


Usage: modify-jobs -workflow W [options] (-field op value) ... <job-selection>
------------------------------------------------------------------------------
Modify the selected jobs by specifying new values for certain job fields.  The
modifications to resources can be specified by (1) setting absolute values,
(2) multiplying a current value by a factor, (3) adding to current value.  You
may specify specific jobs by id, by error category, or universally.  Any jobs
that are modified within the problem queue will be tagged as resolved and then
re-inserted into the dispatch queue.

Only jobs in the dispatch queue or problem queue may be modified.


Select Jobs by ID
-----------------
To select jobs by id, simply list their id numbers after all other arguments.
No flag is required because this is the default.


Select Jobs by Name: -names
---------------------------
Use this flag to signal that the list of jobs comprises names rather than IDs.


Select Jobs by Error: -problems
-------------------------------
Use this flag to signal that the job-selection list enumerates the problem
categories whose jobs are to be modified.


Use regular expressions: -regexp
--------------------------------
This flag signals that the job selection list contains regular expression
patterns that will be matched against ID, Name, or Problem Class.


Fields
------
Any combination of the following fields can be modified.  When the operation
is 'set', the values are interpreted as in add-job.

  -cores
  -disk
  -ram
  -time
 

Operations
----------
The following operations can be applied to the preceding field.

  set         Specify a new absolute value for the field.
  add         Add specified amount to existing value.
  mult        Multiply existing amount by a factor.


Example 1: Double the memory of jobs 123 and 456, halve time, add four cores.
-----------------------------------------------------------------------------
swif modify-jobs "my workflow" -ram mult 2 -time mult 0.5 -cores add 4 123 456


Example 2: Subtract an hour from the requested time for all jobs, add 1GB ram.
------------------------------------------------------------------------------
swif modify-jobs "my workflow" -time add -1h -ram add 1gb -names -regexp '.*'


Example 3: Request 8 cores for all unresolved problem jobs that failed owing
           to Auger timeout or resource limits.
----------------------------------------------------------------------------
swif modify-jobs -cores set 8 -problems AUGER-TIMEOUT AUGER-OVER-RLIMIT