Provided by: libslurm-dev_17.11.2-1build1_amd64 bug

NAME

       slurm_suspend, slurm_suspend2, slurm_resume, slurm_resume2, slurm_requeue, slurm_requeue2,
       slurm_free_job_array_resp  - Slurm suspend, resume and requeue functions

SYNTAX

       #include <slurm/slurm.h>

       int slurm_suspend (
            uint32_t job_id
       );

       int slurm_suspend2 (
               char * job_id_str,
               job_array_resp_msg_t **resp
       );

       int slurm_resume (
            uint32_t job_id
       );

       int slurm_resume2 (
               char * job_id_str,
               job_array_resp_msg_t **resp
       );

       int slurm_requeue (
               uint32_t job_id,
               uint32_t state
       );

       int slurm_requeue2 (
            char * job_id_str,
               uint32_t state,
               job_array_resp_msg_t **resp
       );

       void slurm_free_job_array_resp (
               job_array_resp_msg_t *resp
       );

ARGUMENTS

       job_id Slurm job ID to perform the operation upon in numeric form.

       job_id_str
              Slurm job ID to perform the operation upon in string form.  This is intended to  be
              a single job.  For job arrays, the job ID may be followed by an underscore and task
              ID values.  For example: "123", "123_4", "123_4-6", "123_4,6,8", and  "123_4-6,18".
              The  functions  using this option are designed primarily for use with job arrays so
              that separate error codes can be returned for each task of the job array.

       resp   Array of error  codes  and  job  IDs.   Always  use  the  slurm_free_job_array_resp
              function to release the memory allocated to hold the error codes.

       state  The state in which the job should be requeued valid values are:

              "0"                 If the job has to be requeued in JOB_PENDING state.

              "JOB_SPECIAL_EXIT"  If  the job has to be requeued in the special exit state and be
                                  held.

              "JOB_REQUEUE_HOLD"  If the job has to be requeued in "JOB_PENDING" and held state.

DESCRIPTION

       slurm_suspend     Suspend the specified job.

       slurm_suspend2    Suspend  the  specified  job  or   job   array.    Call   the   function
                         slurm_free_job_array_resp  to  release memory allocated for the response
                         array.

       slurm_resume      Resume execution of a previously suspended job.

       slurm_resume2     Resume execution of a previously suspended job or job array.   Call  the
                         function  slurm_free_job_array_resp  to release memory allocated for the
                         response array.

       slurm_requeue     Requeue a running or pending Slurm batch job.  The job  script  will  be
                         restarted from its beginning, ignoring any previous checkpoint.

       slurm_requeue2    Requeue  a  running  or  pending  Slurm batch job or job array.  The job
                         script will be restarted  from  its  beginning,  ignoring  any  previous
                         checkpoint.   Call  the  function  slurm_free_job_array_resp  to release
                         memory allocated for the response array.

       slurm_free_job_array_resp
                         Release  memory  allocated   by   the   slurm_suspend2,   slurm_resume2,
                         slurm_requeue2, and slurm_update_job2 functions.

RETURN VALUE

       Zero  is returned upon success.  On error, -1 is returned, and the Slurm error code is set
       appropriately.  Functions slurm_suspend2, slurm_resume2, and slurm_requeue2 return zero if
       the  resp  array  is  filled,  in which the that array should be examined to determine the
       error  codes  for  individual  tasks  of  a   job   array.    Then   call   the   function
       slurm_free_job_array_resp to release memory allocated for the response array.

ERRORS

       ESLURM_DISABLED the operation is currently disabled (e.g. attempt to suspend a job that is
       not running, resume a job that is not currently suspended, or requeue a job on  which  the
       operation has been disabled).

       ESLURM_INVALID_JOB_ID the requested job id does not exist.

       ESLURM_ACCESS_DENIED  the  requesting  user  lacks  authorization for the requested action
       (e.g. not user root or SlurmUser).

       ESLURM_JOB_PENDING the requested job is still pending.

       ESLURM_ALREADY_DONE the requested job has already completed.

       ESLURM_NOT_SUPPORTED the requested operation is not supported on this system.

NOTE

       These functions are included in the libslurm library, which must be linked to your process
       for use (e.g. "cc -lslurm myprog.c").

COPYING

       Portions  copyright (C) 2014 SchedMD LLC.  Portions copyright (C) 2005-2006 The Regents of
       the University of California.  Produced at Lawrence  Livermore  National  Laboratory  (cf,
       DISCLAIMER).  CODE-OCEC-09-009. All rights reserved.

       This   file   is  part  of  Slurm,  a  resource  management  program.   For  details,  see
       <https://slurm.schedmd.com/>.

       Slurm is free software; you can redistribute it and/or modify it under the  terms  of  the
       GNU  General Public License as published by the Free Software Foundation; either version 2
       of the License, or (at your option) any later version.

       Slurm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
       even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       GNU General Public License for more details.

SEE ALSO

       scontrol(1)