Slurm error handling functions
#include <slurm/slurm_errno.h>
int slurm_get_errno ( );
void slurm_perror (
char *header
);
char * slurm_strerror (
int errnum
);
errnum
A Slurm error code.
header
A pointer to a string used as a message header for printing along with an error description.
slurm_get_errno Return the error code as set by the Slurm API function executed.
slurm_perror Print to standard error the supplied header followed by a colon followed by a text description of the last Slurm error code generated.
slurm_strerror Given a Slurm error code, return a pointer to a text description of the error's meaning.
slurm_get_errno returns an error code or zero if no error was generated by the last Slurm function call executed. slurm_strerror returns a pointer to a text string, which is empty if no error was generated by the last Slurm function call executed.
#include <stdio.h>
#include <slurm/slurm.h>
#include <slurm/slurm_errno.h>
int main (int argc, char *argv[])
{
/* assume Slurm API function failed here */
fprintf (stderr, "Slurm function errno = %d\n",
slurm_get_errno ());
fprintf (stderr, "Slurm function errno = %d %s\n",
slurm_get_errno (),
slurm_strerror (slurm_get_errno ()));
slurm_perror ("Slurm function");
exit (1);
}
These functions are included in the libslurm library, which must be linked to your process for use (e.g. "cc -lslurm myprog.c").
Copyright (C) 2002 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 <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.
slurm_allocate_resources(3), slurm_complete_job(3), slurm_complete_job_step(3), slurm_allocation_lookup(3), slurm_free_ctl_conf(3), slurm_free_job_info_msg(3), slurm_free_job_step_create_response_msg(3), slurm_free_node_info(3), slurm_free_partition_info(3), slurm_free_resource_allocation_response_msg(3), slurm_free_submit_response_response_msg(3), slurm_get_job_steps(3), slurm_init_job_desc_msg(3), slurm_init_part_desc_msg(3), slurm_job_step_create(3), slurm_job_will_run(3), slurm_kill_job(3), slurm_kill_job_step(3), slurm_load_ctl_conf(3), slurm_load_jobs(3), slurm_load_node(3), slurm_load_partitions(3), slurm_pid2jobid(3), slurm_reconfigure(3), slurm_shutdown(3), slurm_submit_batch_job(3), slurm_update_job(3), slurm_update_node(3), slurm_update_partition(3)