pbs_movejob man page
pbs_movejob — move a pbs batch job to a new destination
int pbs_movejob(int connect, char *job_id, char *destination, char *extend)
Issue a batch request to move a job to a new destination. The job is removed from the present queue and instantiated in a new queue.
A Move Job batch request is generated and sent to the server over the connection specified by connect which is the return value of pbs_connect().
The job_id parameter identifies which job is to be moved; it is specified in the form: sequence_number.server
The destination parameter specifies the new destination for the job. It is specified as: [queue][@server]. If destination is a null pointer or a null string, the destination will be the default queue at the current server. If destination specifies a queue but not a server, the destination will be the named queue at the current server. If destination specifies a server but not a queue, the destination will be the default queue at the named server. If destination specifies both a queue and a server, the destination is that queue at that server.
A job in the Running , Transiting , or Exiting state cannot be moved.
The parameter, extend, is reserved for implementation defined extensions.
qmove(1B), qsub(1B), and pbs_connect(3B)
When the batch request generated by pbs_movejob() function has been completed successfully by a batch server, the routine will return 0 (zero). Otherwise, a non zero error is returned. The error number is also set in pbs_errno.