Provided by: libslurm-dev_19.05.5-1_amd64 bug

NAME

       slurm_init_job_desc_msg,  slurm_init_update_step_msg, slurm_update_job, slurm_update_job2,
       slurm_update_step - Slurm job and step update functions

SYNTAX

       #include <slurm/slurm.h>

       void slurm_init_job_desc_msg (
            job_desc_msg_t *job_desc_msg_ptr
       );

       void slurm_init_update_step_msg (
            step_update_request_msg_t * step_msg
       );

       int slurm_update_job (
            job_desc_msg_t * job_msg
       );

       int slurm_update_job2 (
               job_desc_msg_t * job_msg,
               job_array_resp_msg_t **resp
       );

       int slurm_update_step (
            step_update_request_msg_t * step_msg
       );

       void slurm_free_job_array_resp (
               job_array_resp_msg_t *resp
       );

ARGUMENTS

       job_msg
              Specifies the pointer to a job descriptor.  See slurm.h for  full  details  on  the
              data structure's contents.

       step_msg
              Specifies  the  pointer  to a step descriptor.  See slurm.h for full details on the
              data structure's contents.

       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.

DESCRIPTION

       slurm_init_job_desc_msg
                         Initialize  the  contents  of  a  job  descriptor  with  default values.
                         Execute this function before issuing a request to  submit  or  modify  a
                         job.

       slurm_init_update_step_msg
                         Initialize  the  contents  of  a job step update descriptor with default
                         values.  Execute this function before issuing a request to modify a  job
                         step.

       slurm_update_job  Update  a  job  with the changes made to the data structure passed as an
                         argument to the function.

       slurm_update_job2 Update a job or job array with the changes made to  the  data  structure
                         passed   as   an   argument   to   the   function.   Call  the  function
                         slurm_free_job_array_resp to release memory allocated for  the  response
                         array.

       slurm_update_step Update  a job step with the changes made to the data structure passed as
                         an argument to the function.

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

RETURN VALUE

       On  success,  zero is returned.  On error, -1 is returned, and the Slurm error code is set
       appropriately.  The function slurm_update_job2 returns 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

       SLURM_PROTOCOL_VERSION_ERROR Protocol version has changed, re-link your code.

       ESLURM_ACCESS_DENIED  The  requesting  user  lacks  authorization for the requested action
       (e.g. trying to modify another user's job).

       ESLURM_INVALID_JOB_ID  Invalid job or step ID value.

       ESLURM_INVALID_TIME_VALUE  Invalid time value.

EXAMPLE

       #include <stdio.h>
       #include <slurm/slurm.h>
       #include <slurm/slurm_errno.h>

       int main (int argc, char *argv[])
       {
            job_desc_msg_t              update_job_msg;
            step_update_request_msg_t   update_step_msg;

            slurm_init_job_desc_msg( &update_job_msg );
            update_job_msg.job_id = 1234;
            update_job_msg time_limit = 200;
            if (slurm_update_job (&update_job_msg)) {
                 slurm_perror ("slurm_update_job error");
                 exit (1);
            }

            slurm_init_update_step_msg( &update_step_msg );
            update_step_msg.job_id = 1234;
            update_step_msg.step_id = 2;
            update_step_msg time_limit = 30;
            if (slurm_update_step (&update_step_msg)) {
                 slurm_perror ("slurm_update_step error");
                 exit (1);
            }
            exit (0);
       }

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) 2009-2010 Lawrence
       Livermore National Security.  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),    slurm_free_job_array_resp(3),     slurm_get_errno(3),     slurm_perror(3),
       slurm_strerror(3),