Even the Slurm backend using sacct does use squeue for retrieving the reason a job is pending, since AFAIK cannot be retrieved by sacct. This feature is required to cancel the job if it's blocked in a unrecoverable state and allows ReFrame to progress. However, it creates a high rate of squeue commands, which may be undesirable in some environments. I suggest doing this check every 10 or 20 sacct polls.