From 1fee4fe41f7923d39f44fff33af13661c6bec3fd Mon Sep 17 00:00:00 2001 From: Phil Eckert <eckert2@llnl.gov> Date: Tue, 5 Jun 2012 14:38:39 -0700 Subject: [PATCH] Permit held job to be modified I was doing some checking to find out why the the 2.4 branch and master branch of schedmd was not allowing held jobs to be modified, when attempting to do so, scontrol would return: slurm_update error: Requested partition configuration not available now I did some debugging and found that it was caused by code added to the tail end of job_limits_check() in job_mgr.c. It had this addition: } else if (job_ptr->priority == 0) { /* user or administrator hold */ fail_reason = WAIT_HELD; } It is causes all modifications done by scontrol on held jobs, to fail. --- src/slurmctld/job_mgr.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/slurmctld/job_mgr.c b/src/slurmctld/job_mgr.c index bce9632467a..8978270ee63 100644 --- a/src/slurmctld/job_mgr.c +++ b/src/slurmctld/job_mgr.c @@ -8005,8 +8005,9 @@ int update_job(job_desc_msg_t * job_specs, uid_t uid) if (fail_reason != WAIT_NO_REASON) { if (fail_reason == WAIT_QOS_THRES) error_code = ESLURM_QOS_THRES; - else if (fail_reason == WAIT_PART_TIME_LIMIT || - fail_reason == WAIT_PART_NODE_LIMIT) + else if ((fail_reason == WAIT_PART_TIME_LIMIT) || + (fail_reason == WAIT_PART_NODE_LIMIT) || + (fail_reason == WAIT_HELD)) error_code = SLURM_SUCCESS; else error_code = ESLURM_REQUESTED_PART_CONFIG_UNAVAILABLE; -- GitLab