diff --git a/src/slurmctld/job_mgr.c b/src/slurmctld/job_mgr.c index 1999e787473997f38fd3482b1fb9baa358dcb316..a97ac05521f61336c2e5be30ea35d43b208c959f 100644 --- a/src/slurmctld/job_mgr.c +++ b/src/slurmctld/job_mgr.c @@ -1923,7 +1923,10 @@ static int _job_create(job_desc_msg_t * job_desc, int allocate, int will_run, job_desc->min_nodes, part_ptr->max_nodes_orig); error_code = ESLURM_TOO_MANY_REQUESTED_NODES; return error_code; - } + } else if ((job_desc->min_nodes < part_ptr->min_nodes_orig) && + ((job_desc->max_nodes == NO_VAL) || + (job_desc->max_nodes >= part_ptr->min_nodes_orig))) + job_desc->min_nodes = part_ptr->min_nodes_orig; if (job_desc->max_nodes == NO_VAL) { #ifdef HAVE_BG