diff --git a/NEWS b/NEWS index b05ad649fcd836e3fb7c9f1572f74779edc1db8b..fec4f9a94db1c763f38e332e74d4b1deba97239a 100644 --- a/NEWS +++ b/NEWS @@ -126,6 +126,8 @@ documents those changes that are of interest to users and admins. -- Initiate jobs pending to run in a reservation as soon as the reservation becomes active. -- Purged expired reservation even if it has pending jobs. + -- Corrections to calculation of a pending job's expected start time. + -- Remove some vestigial logic treating job priority of 1 as a special case. * Changes in Slurm 2.6.3 ======================== diff --git a/doc/html/team.shtml b/doc/html/team.shtml index 696fb5efadb8edd8b283609631af1ec1a9caca9a..644c70d6a4adc469077f3bdefd4bd35c1ce921ee 100644 --- a/doc/html/team.shtml +++ b/doc/html/team.shtml @@ -143,6 +143,7 @@ Lead Slurm developers are: <li>Federico Sacerdoti (D. E. Shaw Research)</li> <li>Aleksej Saushev</li> <li>Rod Schultz (Bull)</li> +<li>Filip Skalski (University of Warsaw, Poland)</li> <li>Jason Sollom (Cray)</li> <li>Eric Soyez (Science+Computing)</li> <li>Marcin Stolarek</li> @@ -172,6 +173,6 @@ Lead Slurm developers are: <!-- INDIVIDUALS, PLEASE KEEP IN ALPHABETICAL ORDER --> </ul> -<p style="text-align:center;">Last modified 9 October 2013</p> +<p style="text-align:center;">Last modified 14 October 2013</p> <!--#include virtual="footer.txt"--> diff --git a/src/slurmctld/job_mgr.c b/src/slurmctld/job_mgr.c index 4f6d586e2bf71332ab351b2f2f24e42154df3892..425924ba5b7aa5f3bfe025fe9e14fdd5a81f1d2b 100644 --- a/src/slurmctld/job_mgr.c +++ b/src/slurmctld/job_mgr.c @@ -7060,8 +7060,7 @@ extern void set_job_prio(struct job_record *job_ptr) return; job_ptr->priority = slurm_sched_g_initial_priority(lowest_prio, job_ptr); - if ((job_ptr->priority <= 1) || - (job_ptr->direct_set_prio) || + if ((job_ptr->direct_set_prio) || (job_ptr->details && (job_ptr->details->nice != NICE_OFFSET))) return; @@ -8532,8 +8531,7 @@ int update_job(job_desc_msg_t * job_specs, uid_t uid) detail_ptr->begin_time = job_specs->begin_time; update_accounting = true; - if ((job_ptr->priority == 1) && - (detail_ptr->begin_time <= now)) + if (detail_ptr->begin_time <= now) set_job_prio(job_ptr); slurm_make_time_str(&detail_ptr->begin_time, time_str, sizeof(time_str)); diff --git a/src/slurmctld/job_scheduler.c b/src/slurmctld/job_scheduler.c index 8430d0d057575a43aee8214d2f0b0ce0cdd803be..70500a2a3393c3f72eea08c6ba064fb9adcd4d64 100644 --- a/src/slurmctld/job_scheduler.c +++ b/src/slurmctld/job_scheduler.c @@ -1773,8 +1773,8 @@ static void _delayed_job_start_time(struct job_record *job_ptr) return; part_node_cnt = job_ptr->part_ptr->total_nodes; part_cpu_cnt = job_ptr->part_ptr->total_cpus; - if (part_node_cnt > part_cpu_cnt) - part_cpus_per_node = part_node_cnt / part_cpu_cnt; + if (part_cpu_cnt > part_node_cnt) + part_cpus_per_node = part_cpu_cnt / part_node_cnt; else part_cpus_per_node = 1; @@ -1795,7 +1795,7 @@ static void _delayed_job_start_time(struct job_record *job_ptr) job_size_cpus = job_q_ptr->details->min_nodes; job_size_cpus = MAX(job_size_cpus, (job_size_nodes * part_cpus_per_node)); - if (job_ptr->time_limit == NO_VAL) + if (job_q_ptr->time_limit == NO_VAL) job_time = job_q_ptr->part_ptr->max_time; else job_time = job_q_ptr->time_limit;