Issue: How can I change a class/queue on a job?
Symptom:
At times it might be needed to change a jobs queue. So long as the job is not running this can be accomplised.
Solution:
If the job is an array job submitted through TORQUE then special considerations need to be followed; otherwise you can use mjobctl to modify a single batch job.
For an array job submitted through Moab or a single batch job use mjobctl:
[jbooth@support-mpi moab]$ mjobctl -m class="parallel" 553
class/queue set to parallel for job 553
class/queue set to parallel for job 553[10]
class/queue set to parallel for job 553[1]
class/queue set to parallel for job 553[2]
class/queue set to parallel for job 553[3]
class/queue set to parallel for job 553[4]
class/queue set to parallel for job 553[5]
class/queue set to parallel for job 553[6]
class/queue set to parallel for job 553[7]
class/queue set to parallel for job 553[8]
class/queue set to parallel for job 553[9]
[jbooth@support-mpi moab]$ mjobctl -m account=theskyisblue 553
INFO: Account for job 553 set to theskyisblue
INFO: Account for job 553[10] set to theskyisblue
INFO: Account for job 553[1] set to theskyisblue
INFO: Account for job 553[2] set to theskyisblue
INFO: Account for job 553[3] set to theskyisblue
INFO: Account for job 553[4] set to theskyisblue
INFO: Account for job 553[5] set to theskyisblue
INFO: Account for job 553[6] set to theskyisblue
INFO: Account for job 553[7] set to theskyisblue
INFO: Account for job 553[8] set to theskyisblue
INFO: Account for job 553[9] set to theskyisblue
If an array job was submitted through TORQUE use qmove. The reason for this is that Moab treats every array index as a new job. If you wanted to use mjobctl then the command would need to be ran each time for every index. e.g. mjobctl -m queue=parallel 12345[1] ... mjobctl -m queue=parallel 12345[2] etc.
[jbooth@support-mpi moab]$ qstat
Job ID Name User Time Use S Queue
------------------------- ---------------- --------------- -------- - -----
83594[].support-mpi STDIN jbooth 0 Q batch
[jbooth@support-mpi moab]$ qmove parallel 83594[]
[jbooth@support-mpi moab]$ qstat
Job ID Name User Time Use S Queue
------------------------- ---------------- --------------- -------- - -----
83594[].support-mpi STDIN jbooth 0 Q parallel
Tags: mjobctl, modfy job, qmove