| 1 | /** @file This file contains the database of PBS error ids and messages |
| 2 | * |
| 3 | * HOWTO USE THIS |
| 4 | * |
| 5 | * Add new error: |
| 6 | * - choose the appropriate section (client errors, rm errors) |
| 7 | * - add new line before the ceiling, the error will be automatically numbered |
| 8 | * |
| 9 | * Remove error: |
| 10 | * - rewrite the error into a gap (PBSE_GAPxxx or PBSE_RMGAPxxx) with (char*)0 |
| 11 | * as text part (see PBSE_GAP017 for example) |
| 12 | * |
| 13 | * Add new category: |
| 14 | * - use the same structure for the new category |
| 15 | * - create new name PbsErrSomething |
| 16 | * - don't forget the ceiling and floor (and don't forget to give floor a value) |
| 17 | * - create respective generators in pbs_error.h and pbs_messages.c |
| 18 | * |
| 19 | * @see pbs_error.h and pbs_messages.c for additional info |
| 20 | * |
| 21 | * @note NULL strings should be (const char*)0, but that is not possible right now |
| 22 | */ |
| 23 | |
| 24 | #ifdef PbsErrClient |
| 25 | /* 15000 */ |
| 26 | /* pbs client errors floor (min_client_err - 1) */ |
| 27 | PbsErrClient(PBSE_FLOOR = 15000, (char *)"no error") /* also works as no error */ |
| 28 | /* Unknown Job Identifier */ |
| 29 | PbsErrClient(PBSE_UNKJOBID, (char *)"Unknown Job Id Error") |
| 30 | /* Undefined Attribute */ |
| 31 | PbsErrClient(PBSE_NOATTR, (char *)"Undefined attribute ") |
| 32 | /* attempt to set READ ONLY attribute */ |
| 33 | PbsErrClient(PBSE_ATTRRO, (char *)"Cannot set attribute, read only or insufficient permission ") |
| 34 | /* Invalid request */ |
| 35 | PbsErrClient(PBSE_IVALREQ, (char *)"Invalid request") |
| 36 | /* Unknown batch request */ |
| 37 | PbsErrClient(PBSE_UNKREQ, (char *)"Unknown request") |
| 38 | /* Too many submit retries */ |
| 39 | PbsErrClient(PBSE_TOOMANY, (char *)"Too many submit retries") |
| 40 | /* No permission */ |
| 41 | PbsErrClient(PBSE_PERM, (char *)"Unauthorized Request ") |
| 42 | /* pbs_iff not found */ |
| 43 | PbsErrClient(PBSE_IFF_NOT_FOUND, (char *)"trqauthd unable to authenticate. User or PID of calling process not found or does not match") |
| 44 | /* munge not found */ |
| 45 | PbsErrClient(PBSE_MUNGE_NOT_FOUND, (char *)"munge executable not found, unable to authenticate") |
| 46 | /* 15010 */ |
| 47 | /* access from host not allowed */ |
| 48 | PbsErrClient(PBSE_BADHOST, (char *)"Access from host not allowed, or unknown host") |
| 49 | /* job already exists */ |
| 50 | PbsErrClient(PBSE_JOBEXIST, (char *)"Job with requested ID already exists") |
| 51 | /* system error occurred */ |
| 52 | PbsErrClient(PBSE_SYSTEM, (char *)" System error: ") |
| 53 | /* internal server error occurred */ |
| 54 | PbsErrClient(PBSE_INTERNAL, (char *)"PBS server internal error") |
| 55 | /* parent job of dependent in rte que */ |
| 56 | PbsErrClient(PBSE_REGROUTE, (char *)"Dependent parent job currently in routing queue") |
| 57 | /* unknown signal name */ |
| 58 | PbsErrClient(PBSE_UNKSIG, (char *)"Unknown/illegal signal name") |
| 59 | /* bad attribute value */ |
| 60 | PbsErrClient(PBSE_BADATVAL, (char *)"Illegal attribute or resource value for ") |
| 61 | /* Cannot modify attrib in run state */ |
| 62 | PbsErrClient(PBSE_MODATRRUN, (char *)"Cannot modify attribute while job running ") |
| 63 | /* request invalid for job state */ |
| 64 | PbsErrClient(PBSE_BADSTATE, (char *)"Request invalid for state of job") |
| 65 | /* gap filler */ |
| 66 | PbsErrClient(PBSE_GAP017, (char*)0) |
| 67 | /* 15020 */ |
| 68 | /* Unknown queue name */ |
| 69 | PbsErrClient(PBSE_UNKQUE, (char *)"Unknown queue") |
| 70 | /* Invalid Credential in request */ |
| 71 | PbsErrClient(PBSE_BADCRED, (char *)"Invalid credential") |
| 72 | /* Expired Credential in request */ |
| 73 | PbsErrClient(PBSE_EXPIRED, (char *)"Expired credential") |
| 74 | /* Queue not enabled */ |
| 75 | PbsErrClient(PBSE_QUNOENB, (char *)"Queue is not enabled") |
| 76 | /* No access permission for queue */ |
| 77 | PbsErrClient(PBSE_QACESS, (char *)"Access to queue is denied") |
| 78 | /* Bad user - no password entry */ |
| 79 | PbsErrClient(PBSE_BADUSER, (char *)"Bad UID for job execution") |
| 80 | /* Max hop count exceeded */ |
| 81 | PbsErrClient(PBSE_HOPCOUNT, (char *)"Job routing over too many hops") |
| 82 | /* Queue already exists */ |
| 83 | PbsErrClient(PBSE_QUEEXIST, (char *)"Queue already exists") |
| 84 | /* incompatable queue attribute type */ |
| 85 | PbsErrClient(PBSE_ATTRTYPE, (char *)"Incompatible type") |
| 86 | /* Queue Busy (not empty) */ |
| 87 | PbsErrClient(PBSE_QUEBUSY, (char *)"Cannot delete busy queue") |
| 88 | /* 15030 */ |
| 89 | /* Queue name too long */ |
| 90 | PbsErrClient(PBSE_QUENBIG, (char *)"Queue name too long") |
| 91 | /* Feature/function not supported */ |
| 92 | PbsErrClient(PBSE_NOSUP, (char *)"No support for requested service") |
| 93 | /* Cannot enable queue,needs add def */ |
| 94 | PbsErrClient(PBSE_QUENOEN, (char *)"Cannot enable queue, incomplete definition") |
| 95 | /* Protocol error */ |
| 96 | PbsErrClient(PBSE_PROTOCOL, (char *)"Batch protocol error") |
| 97 | /* Bad attribute list structure */ |
| 98 | PbsErrClient(PBSE_BADATLST, (char *)"Bad attribute list structure") |
| 99 | /* No free connections */ |
| 100 | PbsErrClient(PBSE_NOCONNECTS, (char *)"No free connections") |
| 101 | /* No server to connect to */ |
| 102 | PbsErrClient(PBSE_NOSERVER, (char *)"No server specified") |
| 103 | /* Unknown resource */ |
| 104 | PbsErrClient(PBSE_UNKRESC, (char *)"Unknown resource type ") |
| 105 | /* Job exceeds Queue resource limits */ |
| 106 | PbsErrClient(PBSE_EXCQRESC, (char *)"Job exceeds queue resource limits") |
| 107 | /* No Default Queue Defined */ |
| 108 | PbsErrClient(PBSE_QUENODFLT, (char *)"No default queue specified") |
| 109 | /* 15040 */ |
| 110 | /* Job Not Rerunnable */ |
| 111 | PbsErrClient(PBSE_NORERUN, (char *)"job is not rerunnable") |
| 112 | /* Route rejected by all destinations */ |
| 113 | PbsErrClient(PBSE_ROUTEREJ, (char *)"Job rejected by all possible destinations (check syntax, queue resources, ...)") |
| 114 | /* Time in Route Queue Expired */ |
| 115 | PbsErrClient(PBSE_ROUTEEXPD, (char *)"Time in Route Queue Expired") |
| 116 | /* Request to MOM failed */ |
| 117 | PbsErrClient(PBSE_MOMREJECT, (char *)"Execution server rejected request") |
| 118 | /* (qsub) cannot access script file */ |
| 119 | PbsErrClient(PBSE_BADSCRIPT, (char *)"(qsub) cannot access script file") |
| 120 | /* Stage In of files failed */ |
| 121 | PbsErrClient(PBSE_STAGEIN, (char *)"Stage In of files failed") |
| 122 | /* Resources temporarily unavailable */ |
| 123 | PbsErrClient(PBSE_RESCUNAV, (char *)"Resource temporarily unavailable") |
| 124 | /* Bad Group specified */ |
| 125 | PbsErrClient(PBSE_BADGRP, (char *)"Bad GID for job execution") |
| 126 | /* Max number of jobs in queue */ |
| 127 | PbsErrClient(PBSE_MAXQUED, (char *)"Maximum number of jobs already in queue") |
| 128 | /* Checkpoint Busy, may be retries */ |
| 129 | PbsErrClient(PBSE_CKPBSY, (char *)"Checkpoint busy, may retry") |
| 130 | /* 15050 */ |
| 131 | /* Limit exceeds allowable */ |
| 132 | PbsErrClient(PBSE_EXLIMIT, (char *)"Resource limit exceeds allowable") |
| 133 | /* Bad Account attribute value */ |
| 134 | PbsErrClient(PBSE_BADACCT, (char *)"Invalid Account") |
| 135 | /* Job already in exit state */ |
| 136 | PbsErrClient(PBSE_ALRDYEXIT, (char *)"Job already in exit state") |
| 137 | /* Job files not copied */ |
| 138 | PbsErrClient(PBSE_NOCOPYFILE, (char *)"Job files not copied") |
| 139 | /* unknown job id after clean init */ |
| 140 | PbsErrClient(PBSE_CLEANEDOUT, (char *)"unknown job id after clean init") |
| 141 | /* No Master in Sync Set */ |
| 142 | PbsErrClient(PBSE_NOSYNCMSTR, (char *)"No master found for sync job set") |
| 143 | /* Invalid dependency */ |
| 144 | PbsErrClient(PBSE_BADDEPEND, (char *)"Invalid Job Dependency") |
| 145 | /* Duplicate entry in List */ |
| 146 | PbsErrClient(PBSE_DUPLIST, (char *)"Duplicate entry in list ") |
| 147 | /* Bad DIS based Request Protocol */ |
| 148 | PbsErrClient(PBSE_DISPROTO, (char *)"Bad DIS based Request Protocol") |
| 149 | /* cannot execute there */ |
| 150 | PbsErrClient(PBSE_EXECTHERE, (char *)"Cannot execute at specified host because of checkpoint or stagein files") |
| 151 | /* 15060 */ |
| 152 | /* sister rejected */ |
| 153 | PbsErrClient(PBSE_SISREJECT, (char *)"sister rejected") |
| 154 | /* sister could not communicate */ |
| 155 | PbsErrClient(PBSE_SISCOMM, (char *)"sister could not communicate") |
| 156 | /* req rejected -server shutting down */ |
| 157 | PbsErrClient(PBSE_SVRDOWN, (char *)"Request not allowed: Server shutting down") |
| 158 | /* not all tasks could checkpoint */ |
| 159 | PbsErrClient(PBSE_CKPSHORT, (char *)"not all tasks could checkpoint") |
| 160 | /* Named node is not in the list */ |
| 161 | PbsErrClient(PBSE_UNKNODE, (char *)"Unknown node ") |
| 162 | /* node-attribute not recognized */ |
| 163 | PbsErrClient(PBSE_UNKNODEATR, (char *)"Unknown node-attribute ") |
| 164 | /* Server has no node list */ |
| 165 | PbsErrClient(PBSE_NONODES, (char *)"Server has no node list") |
| 166 | /* Node name is too big */ |
| 167 | PbsErrClient(PBSE_NODENBIG, (char *)"Node name is too big") |
| 168 | /* Node name already exists */ |
| 169 | PbsErrClient(PBSE_NODEEXIST, (char *)"Node name already exists") |
| 170 | /* Bad node-attribute value */ |
| 171 | PbsErrClient(PBSE_BADNDATVAL, (char *)"Illegal value for ") |
| 172 | /* 15070 */ |
| 173 | /* State values are mutually exclusive */ |
| 174 | PbsErrClient(PBSE_MUTUALEX, (char *)"Mutually exclusive values for ") |
| 175 | /* Error(s) during global modification of nodes */ |
| 176 | PbsErrClient(PBSE_GMODERR, (char *)"Modification failed for ") |
| 177 | /* could not contact Mom */ |
| 178 | PbsErrClient(PBSE_NORELYMOM, (char *)"Server could not connect to MOM") |
| 179 | /* no time-shared nodes */ |
| 180 | PbsErrClient(PBSE_NOTSNODE, (char *)"No time-share node available") |
| 181 | /* wrong job type (batch or interactive) */ |
| 182 | PbsErrClient(PBSE_JOBTYPE, (char *)"Wrong job type") |
| 183 | /* bad entry in ACL host list */ |
| 184 | PbsErrClient(PBSE_BADACLHOST, (char *)"Bad ACL entry in host list") |
| 185 | /* max number of jobs queued for user */ |
| 186 | PbsErrClient(PBSE_MAXUSERQUED, (char *)"Maximum number of jobs already in queue for user") |
| 187 | /* bad type in disallowed_types queue attribute */ |
| 188 | PbsErrClient(PBSE_BADDISALLOWTYPE, (char *)"Bad type in disallowed_types list") |
| 189 | /* interactive jobs not allowed in queue */ |
| 190 | PbsErrClient(PBSE_NOINTERACTIVE, (char *)"Queue does not allow interactive jobs") |
| 191 | /* batch jobs not allowed in queue */ |
| 192 | PbsErrClient(PBSE_NOBATCH, (char *)"Queue does not allow batch jobs") |
| 193 | /* 15080 */ |
| 194 | /* rerunable jobs not allowed in queue */ |
| 195 | PbsErrClient(PBSE_NORERUNABLE, (char *)"Queue does not allow rerunable jobs") |
| 196 | /* nonrerunable jobs not allowed in queue */ |
| 197 | PbsErrClient(PBSE_NONONRERUNABLE, (char *)"Queue does not allow nonrerunable jobs") |
| 198 | /* unknown array id */ |
| 199 | PbsErrClient(PBSE_UNKARRAYID, (char *)"Unknown Array ID") |
| 200 | /* bad array request */ |
| 201 | PbsErrClient(PBSE_BAD_ARRAY_REQ, (char *)"Bad Job Array Request") |
| 202 | /* Bad file format for array */ |
| 203 | PbsErrClient(PBSE_BAD_ARRAY_DATA, (char *)"Bad data reading job array from file ") |
| 204 | /* Time out */ |
| 205 | PbsErrClient(PBSE_TIMEOUT, (char *)"Time out") |
| 206 | PbsErrClient(PBSE_JOBNOTFOUND, (char *)"Job not found") |
| 207 | /* fault tolerant jobs not allowed in queue */ |
| 208 | PbsErrClient(PBSE_NOFAULTTOLERANT, (char *)"Queue does not allow fault tolerant jobs") |
| 209 | /* only fault tolerant jobs allowed in queue */ |
| 210 | PbsErrClient(PBSE_NOFAULTINTOLERANT, (char *)"Queue does not allow fault intolerant jobs") |
| 211 | PbsErrClient(PBSE_NOJOBARRAYS, (char *)"Queue does not allow job arrays") |
| 212 | /* 15090 */ |
| 213 | PbsErrClient(PBSE_RELAYED_TO_MOM, (char *)"request was relayed to a MOM") /* */ |
| 214 | PbsErrClient(PBSE_MEM_MALLOC, (char *)"Error allocating memory - out of memory") |
| 215 | PbsErrClient(PBSE_MUTEX, (char *)"Error allocating controling mutex (lock/unlock)") |
| 216 | PbsErrClient(PBSE_THREADATTR, (char *)"Error setting thread attributes") |
| 217 | PbsErrClient(PBSE_THREAD, (char *)"Error creating thread") |
| 218 | PbsErrClient(PBSE_SELECT, (char *)"Error in socket select") |
| 219 | PbsErrClient(PBSE_SOCKET_FAULT, (char *)"Unable to get connection to socket") |
| 220 | PbsErrClient(PBSE_SOCKET_WRITE, (char *)"Error writing data to socket") |
| 221 | PbsErrClient(PBSE_SOCKET_READ, (char *)"Error reading data from socket") |
| 222 | PbsErrClient(PBSE_SOCKET_CLOSE, (char *)"Socket close detected") |
| 223 | /* 15100 */ |
| 224 | PbsErrClient(PBSE_SOCKET_LISTEN, (char *)"Error listening on socket") |
| 225 | PbsErrClient(PBSE_AUTH_INVALID, (char *)"Invalid auth type in request") |
| 226 | PbsErrClient(PBSE_NOT_IMPLEMENTED, (char *)"This functionality is not yet implemented") |
| 227 | PbsErrClient(PBSE_QUENOTAVAILABLE, (char *)"Queue is currently not available") |
| 228 | PbsErrClient(PBSE_TMPDIFFOWNER, (char *)"tmpdir owned by another user") |
| 229 | PbsErrClient(PBSE_TMPNOTDIR, (char *)"tmpdir exists but is not a directory") |
| 230 | PbsErrClient(PBSE_TMPNONAME, (char *)"tmpdir cannot be named for job") |
| 231 | PbsErrClient(PBSE_CANTOPENSOCKET, (char *)"cannot open demux sockets") |
| 232 | PbsErrClient(PBSE_CANTCONTACTSISTERS, (char *)"cannot send join job to all sisters") |
| 233 | PbsErrClient(PBSE_CANTCREATETMPDIR, (char *)"cannot create tmpdir for job") |
| 234 | /* 15110 */ |
| 235 | PbsErrClient(PBSE_BADMOMSTATE, (char *)"Mom is down, cannot run job") |
| 236 | PbsErrClient(PBSE_SOCKET_INFORMATION, (char *)"socket information is not accessible") |
| 237 | PbsErrClient(PBSE_SOCKET_DATA, (char *)"data on socket does not process correctly") |
| 238 | PbsErrClient(PBSE_CLIENT_INVALID, (char *)"client is not allowed/trusted") |
| 239 | PbsErrClient(PBSE_PREMATURE_EOF, (char *)"Premature End of File") |
| 240 | PbsErrClient(PBSE_CAN_NOT_SAVE_FILE, (char *)"Error saving file") |
| 241 | PbsErrClient(PBSE_CAN_NOT_OPEN_FILE, (char *)"Error opening file") |
| 242 | PbsErrClient(PBSE_CAN_NOT_WRITE_FILE, (char *)"Error writing file") |
| 243 | PbsErrClient(PBSE_JOB_FILE_CORRUPT, (char *)"Job file corrupt") |
| 244 | PbsErrClient(PBSE_JOB_RERUN, (char *)"Job can not be rerun") |
| 245 | /* 15120 */ |
| 246 | PbsErrClient(PBSE_CONNECT, (char *)"Can not establish connection") |
| 247 | PbsErrClient(PBSE_JOBWORKDELAY, (char *)"Job function must be temporarily delayed") |
| 248 | PbsErrClient(PBSE_BAD_PARAMETER, (char *)"Parameter of function was invalid") |
| 249 | PbsErrClient(PBSE_CONTINUE, (char *)"Continue processing on job. (Not an error)") |
| 250 | PbsErrClient(PBSE_JOBSUBSTATE, (char *)"Current sub state does not allow trasaction.") |
| 251 | PbsErrClient(PBSE_CAN_NOT_MOVE_FILE, (char *)"Error moving file") |
| 252 | PbsErrClient(PBSE_JOB_RECYCLED, (char *)"Job is being recycled") |
| 253 | PbsErrClient(PBSE_JOB_ALREADY_IN_QUEUE, (char *)"Job is already in destination queue.") |
| 254 | PbsErrClient(PBSE_INVALID_MUTEX, (char *)"Mutex is NULL or otherwise invalid") |
| 255 | PbsErrClient(PBSE_MUTEX_ALREADY_LOCKED, (char *)"The mutex is already locked by this object") |
| 256 | /* 15130 */ |
| 257 | PbsErrClient(PBSE_MUTEX_ALREADY_UNLOCKED, (char *)"The mutex has already been unlocked by this object") |
| 258 | PbsErrClient(PBSE_INVALID_SYNTAX, (char *)"Command syntax invalid") |
| 259 | PbsErrClient(PBSE_NODE_DOWN, (char *)"A node is down. Check the MOM and host") |
| 260 | PbsErrClient(PBSE_SERVER_NOT_FOUND, (char *)"Could not connect to batch server") |
| 261 | PbsErrClient(PBSE_SERVER_BUSY, (char *)"Pbs Server is currently too busy to service this request. Please retry this request.") |
| 262 | PbsErrClient(PBSE_CLIENT_CONN_NOT_FOUND, (char *)"Client connection not found. trqauthd unable to authorize user. Possible transient failure. Please try again") |
| 263 | PbsErrClient(PBSE_CANNOT_RESOLVE, (char *)"Could not resolve host name") |
| 264 | PbsErrClient(PBSE_DOMAIN_SOCKET_FAULT, (char *)"could not connect to trqauthd") |
| 265 | PbsErrClient(PBSE_JOB_NOT_IN_QUEUE, (char *)"Job not found in queue.") |
| 266 | PbsErrClient(PBSE_LOGIN_BUSY, (char *)"Login node is currently too busy to run a job") |
| 267 | PbsErrClient(PBSE_NODE_CANT_MANAGE_FREQUENCY, (char *)"The cpu frequency for this node can not be modified.") |
| 268 | PbsErrClient(PBSE_FREQUENCY_NOT_AVAILABLE, (char *)"Requested governor or frequency is not available.") |
| 269 | PbsErrClient(PBSE_UNEXPECTED_DATA_IN_FILE, (char *)"File contains unexpected data.") |
| 270 | PbsErrClient(PBSE_CAN_NOT_READ_FILE, (char *)"Error reading file") |
| 271 | PbsErrClient(PBSE_NO_MATCHING_FREQUENCY, (char *)"No matching frequency available.") |
| 272 | PbsErrClient(PBSE_INVALID_FREQUENCY_FILE, (char *)"Unable to read base frequency file.") |
| 273 | PbsErrClient(PBSE_CHANGED_CPU_FREQUENCY, (char *)"Changed cpu clock frequency.") |
| 274 | PbsErrClient(PBSE_INVALID_POWER_STATE_TRANSISTION, (char *)"Nodes can not be changed from one low power state directly to another.") |
| 275 | PbsErrClient(PBSE_POWER_STATE_UNSUPPORTED, (char *)"The node does not support changing the power state.") |
| 276 | PbsErrClient(PBSE_POWER_STATE_UNAVAILABLE, (char *)"The node does not support the requested power state.") |
| 277 | PbsErrClient(PBSE_CANT_CHANGE_POWER_STATE_WITH_JOBS_RUNNING, (char *)"Can't change power state on a node which has running jobs.") |
| 278 | PbsErrClient(PBSE_CANT_WAKE_OFF_MACHINE, (char *)"Unable to wake a node in hibernate or shutdown state.") |
| 279 | |
| 280 | /* pbs client errors ceiling (max_client_err + 1) */ |
| 281 | PbsErrClient(PBSE_CEILING, (char*)0) |
| 282 | #endif |
| 283 | |
| 284 | #ifdef PbsErrRm |
| 285 | /* pbs rm errors floor (min_rm_err - 1) */ |
| 286 | PbsErrRm(PBSE_RMFLOOR = 15200, (char*)0) |
| 287 | /* resource unknown */ |
| 288 | PbsErrRm(PBSE_RMUNKNOWN, (char *)"resource unknown") |
| 289 | /* parameter could not be used */ |
| 290 | PbsErrRm(PBSE_RMBADPARAM, (char *)"parameter could not be used") |
| 291 | /* a parameter needed did not exist */ |
| 292 | PbsErrRm(PBSE_RMNOPARAM, (char *)"a parameter needed did not exist") |
| 293 | /* something specified didn't exist */ |
| 294 | PbsErrRm(PBSE_RMEXIST, (char *)"something specified didn't exist") |
| 295 | /* a system error occured */ |
| 296 | PbsErrRm(PBSE_RMSYSTEM, (char *)"a system error occured") |
| 297 | /* only part of reservation made */ |
| 298 | PbsErrRm(PBSE_RMPART, (char *)"only part of reservation made") |
| 299 | /* pbs rm errors ceiling (max_rm_err + 1) */ |
| 300 | PbsErrRm(PBSE_RMCEILING, (char*)0) |
| 301 | #endif |
| 302 | |