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)