Think of it this way: scontrol is to control the behavior of the cluster now(ish). Once jobs are done, they can't really be controlled any more, so you use sacct to look back at their history. That's a logical way of thinking about it.

Architecturally, I assume it's because scontrol gets it's data from the state information, which only concerns the current state of the cluster and sacct, gets its data from the accounting DB, which is for historical information. 

That's just a guess - I haven't read the source code, but the last I checked, state data was in /var/lib/slurm, or something like that, and accounting information was in a mysql DB, so two different data formats.

Prentice

On 6/17/25 7:42 AM, Davide DelVento via slurm-users wrote:
Yeah, that's an annoying thing which I have not understood why has been designed that way. The information is there and it can be queried, just with a different command and spitting it out in a different format. The syntax is

sacct -j  XXX

which gives you only some fields, or

sacct -o fields,you,want -j XXX

the (super long) list of possible fields (case insensitive) can be queried with 

sacct -e

HTH

On Tue, Jun 17, 2025 at 4:45 AM Gestió Servidors via slurm-users <slurm-users@lists.schedmd.com> wrote:

Hello,

 

Is there any way to get all information (like submit script or submit node) from a job that is completed? Something like “scontrol show jobid=XXX” when job is “running” or “pending”. I need to inspect the submit script of a job but I only know job_id.

 

Thanks.

 


--
slurm-users mailing list -- slurm-users@lists.schedmd.com
To unsubscribe send an email to slurm-users-leave@lists.schedmd.com


    
-- 
Prentice Bisbal
HPC Systems Engineer III
Computational & Information Systems Laboratory (CISL)
NSF National Center for Atmospheric Research (NSF NCAR)
https://www.cisl.ucar.edu
https://ncar.ucar.edu