sge_status(5)

✨ NAME ✨

sge_status β€” Grid Engine job status values πŸŽ€

Like, this is the sge_status(5) page bestie, and it's literally the decoder ring for every cryptic little letter cluster Grid Engine throws at you.


πŸ¦‹ DESCRIPTION πŸ¦‹

πŸ’– Job state πŸ’–

okay so, here's the tea β˜• β€” when you run qstat(1), you get these tiny letter combos that look like someone fell asleep on the keyboard. They're not random!! They're your job's whole mood. 🫢

Same deal with what drmaa_jobcontrol(3) hands back to you.

And here's the mapping situation: the DRMAA state column is the thing that lines up with the DRMAA_PS_state value that drmaa_job_ps(3) might return. iykyk πŸ’…

So the list below is: the Category (the vibe), the State (what's actually happening), the SGE letters (what you'll see in qstat), and the DRMAA state (the formal name for that same vibe).

no cap, every single one of these is listed. we are not skipping any. periodt. πŸ‘‘

🌸 Pending 🌸

not running yet, just vibing in the queue. The h means a hold, the R means it's a re-queue, the w means it's waiting. Slay.

  • pending β€” SGE letters: qw, Rq β€” DRMAA: QUEUED_ACTIVE ✨
  • pending, user hold β€” SGE letters: hqw β€” DRMAA: USER_ON_HOLD πŸ™ˆ
  • pending, system hold β€” SGE letters: hqw β€” DRMAA: SYSTEM_ON_HOLD πŸ›‘
  • pending, user and system hold β€” SGE letters: hqw β€” DRMAA: USER_SYSTEM_ON_HOLD 😭
  • pending, user hold, re-queue β€” SGE letters: hRwq β€” DRMAA: USER_ON_HOLD πŸ”
  • pending, system hold, re-queue β€” SGE letters: hRwq β€” DRMAA: SYSTEM_ON_HOLD πŸ”
  • pending, user and system hold, re-queue β€” SGE letters: hRwq β€” DRMAA: USER_SYSTEM_ON_HOLD πŸ”

πŸ”₯ Running / transferring πŸ”₯

it's alive!! main character energy, actively doing the thing (or being moved around).

  • running, transferring β€” SGE letters: r, hr, t β€” DRMAA: RUNNING πŸƒ
  • running, re-run / transferring β€” SGE letters: Rr, Rt β€” DRMAA: RUNNING πŸƒ

🧚 Suspended 🧚

paused. not cancelled, not dead, just ✨ on pause ✨.

  • job suspended β€” SGE letters: s, ts β€” DRMAA: USER_SUSPENDED ⏸️
  • queue suspended β€” SGE letters: S, tS β€” DRMAA: SYSTEM_SUSPENDED ⏸️
  • queue suspended by alarm β€” SGE letters: T, tT β€” DRMAA: SYSTEM_SUSPENDED 🚨
  • all suspended with re-run β€” SGE letters: Rs, Rts, RS, RtS, RT, RtT β€” DRMAA: SYSTEM_SUSPENDED 😴

πŸ’€ Error πŸ’€

something went sideways. it's giving oops.

  • all pending states with error β€” SGE letters: Eqw, Ehqw, EhRqw β€” DRMAA: FAILED πŸ’”

πŸŽ€ Deleting πŸŽ€

on the way out. the d is literally the "deletion" badge.

  • all running and suspended states with deletion β€” SGE letters: dr, dt, dRr, dRt, ds, dS, dT, dRs, dRS, dRT β€” DRMAA: same as equivalent DRMAA states without the "d" 🫑

🌈 Finished 🌈

it did the thing. we love a completion arc.

  • job finished normally β€” SGE letters: z β€” DRMAA: DONE πŸ‘‘

⭐ Unkown ⭐

(yes, spelled exactly like that in the original β€” not me, I would never πŸ’€)

the status is a mystery. nobody knows. it's giving shrug emoji.

  • status cannot be determined β€” SGE letters: (nothing β€” this column is literally empty) β€” DRMAA: UNDETERMINED πŸ¦‹

and yeah that's the whole job state situation. more of this page still to come, bestie β€” we're not done yet 🫢

okay so bestie, this next bit is the receipts table β€” except it's a table in the original and we're doing bullets because tables are not the vibe here. The following table lists the "failed" values reported by qacct(1) (see accounting(5)), their description, also reported by qacct, whether the resource usage accounting data are valid for the job ("OK"), and an explanation. The host's messages file or the shepherd trace file (preserved with execd_params KEEP_ACTIVE in sge_conf(5)) may provide more information about errors. πŸ’…


  • 0 β€” no failure Β· OK: Y β€” ran and exited normally ✨
  • 1 β€” assumedly before job Β· OK: N β€” failed early in execd πŸ’€
  • 3 β€” before writing config Β· OK: N β€” failed before execd set up local spool
  • 4 β€” before writing PID Β· OK: N β€” shepherd failed to record its pid - filesystem problem?
  • 6 β€” setting processor set Β· OK: N β€” failed setting up processor set (obsolete)
  • 7 β€” before prolog Β· OK: N β€” failed before prolog
  • 8 β€” in prolog Β· OK: N β€” failed in prolog
  • 9 β€” before pestart Β· OK: N β€” failed before starting PE
  • 10 β€” in pestart Β· OK: N β€” failed in PE starter
  • 11 β€” before job Β· OK: N β€” failed in shepherd before starting job
  • 12 β€” before pestop Β· OK: Y β€” ran, but failed before calling PE stop procedure
  • 13 β€” in pestop Β· OK: Y β€” ran, but PE stop procedure failed
  • 14 β€” before epilog Β· OK: Y β€” ran, but failed before calling epilog
  • 15 β€” in epilog Β· OK: Y β€” ran, but failed in epilog
  • 16 β€” releasing processor set Β· OK: Y β€” ran, but processor set could not be released (obsolete)
  • 17 β€” through signal Β· OK: Y β€” job killed by signal (possibly qdel)
  • 18 β€” shepherd returned error Β· OK: N β€” shepherd died somehow
  • 19 β€” before writing exit_status Β· OK: N β€” shepherd didn't write reports correctly - probably program or machine crash
  • 20 β€” found unexpected error file Β· OK: ? β€” shepherd encountered a problem
  • 21 β€” in recognizing job Β· OK: N β€” qmaster asked about an unknown job (not in accounting?)
  • 24 β€” migrating (checkpointing jobs) Β· OK: Y β€” ran, will be migrated
  • 25 β€” rescheduling Β· OK: Y β€” ran, will be rescheduled
  • 26 β€” opening output file Β· OK: N β€” failed opening stderr/stdout file
  • 27 β€” searching requested shell Β· OK: N β€” failed finding specified shell
  • 28 β€” changing to working directory Β· OK: N β€” failed changing to start directory

ngl bestie, if the OK is N, those resource usage accounting numbers are not it β€” don't trust them. If it's ?, the original is literally shrugging at you πŸ™ˆ. And if it's Y, the job ran and the data is valid, periodt. πŸ’–

More parts are coming, so don't go anywhere. πŸ¦‹

...and the ✨vibe✨ continues, bestie, same table, same columns as the last two parts, no skips, no gaps, we're finishing the whole thing πŸ’…

  • 29 β€” AFS setup β€” N β€” failed setting up AFS security
  • 30 β€” application error returned β€” Y β€” ran and exited 100 - maybe re-scheduled
  • 31 β€” accessing sgepasswd file β€” N β€” failed because sgepasswd not readable (MS Windows)
  • 32 β€” entry is missing in password file β€” N β€” failed because user not in sgepasswd (MS Windows)
  • 33 β€” wrong password β€” N β€” failed because of wrong password against sgepasswd (MS Windows)
  • 34 β€” communicating with Grid Engine Helper Service β€” N β€” failed because of failure of helper service (MS Windows)
  • 35 β€” before job in Grid Engine Helper Service β€” N β€” failed because of failure running helper service (MS Windows)
  • 36 β€” checking configured daemons β€” N β€” failed because of configured remote startup daemon
  • 37 β€” qmaster enforced h_rt, h_cpu, or h_vmem limit β€” Y β€” ran, but killed due to exceeding run time limit
  • 38 β€” adding supplementary group β€” N β€” failed adding supplementary gid to job
  • 100 β€” assumedly after job β€” Y β€” ran, but killed by a signal (perhaps due to exceeding resources), task died, shepherd died (e.g. node crash), etc.

okay and real talk for a sec, because this bit is genuinely important πŸ‘‘ if one of those methods the shepherd runs (think prolog and friends) hands back a non-zero return code, you wanna know what that actually does to your job β€” so go read sge_shepherd(8). That's where the tea is πŸ«–

✨ SEE ALSO ✨

bestie the whole cinematic universe is right here, go explore πŸ¦‹


and that's a wrap on the whole page, no cap πŸ’– this was sge_status(5), dated 2013-04-07 β€” yes she's an elder but she still ate, and she remains iconic. go forth and read your exit codes like the main character you are, bestie πŸŒΈπŸ‘‘βœ¨