NAME¶
slurm_init_job_desc_msg, slurm_init_update_step_msg, slurm_update_job,
  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_step (
 
	step_update_request_msg_t * 
step_msg
 
);
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.
    
  
 
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_step Update a job step with the changes made to the data
  structure passed as an argument to the function.
RETURN VALUE¶
On success, zero is returned. On error, -1 is returned, and the Slurm error code
  is set appropriately.
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¶
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
  <
http://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_get_errno(3), 
slurm_perror(3),
  
slurm_strerror(3)