diff --git a/src/slurmctld/node_scheduler.c b/src/slurmctld/node_scheduler.c index 7ff1535ffa0ab8c627df84f5158546da54c95b4f..d81393526b58a1eb94ae1e6c54c30fe7a0f95391 100644 --- a/src/slurmctld/node_scheduler.c +++ b/src/slurmctld/node_scheduler.c @@ -532,11 +532,11 @@ extern void deallocate_nodes(struct job_record *job_ptr, bool timeout, job_ptr->node_cnt = 0; } else { bool set_fe_comp = false; - if (front_end_ptr->job_cnt_run) + if (front_end_ptr->job_cnt_run) { front_end_ptr->job_cnt_run--; - else { - error("front_end %s job_cnt_run underflow", - front_end_ptr->name); + } else { + error("%s: front_end %s job_cnt_run underflow", + __func__, front_end_ptr->name); } if (front_end_ptr->job_cnt_run == 0) { uint32_t state_flags; diff --git a/src/slurmctld/read_config.c b/src/slurmctld/read_config.c index 8906bdef721e7498964bc059d4664080c6af543f..3c3c39dd32956983b35b47ed132929755d3c3d58 100644 --- a/src/slurmctld/read_config.c +++ b/src/slurmctld/read_config.c @@ -1868,6 +1868,8 @@ static int _sync_nodes_to_comp_job(void) if (accounting_enforce & ACCOUNTING_ENFORCE_LIMITS) acct_policy_job_begin(job_ptr); + if (job_ptr->front_end_ptr) + job_ptr->front_end_ptr->job_cnt_run++; deallocate_nodes(job_ptr, false, false, false); /* The job in completing state at slurmctld restart or * reconfiguration, do not log completion again.