diff --git a/src/common/assoc_mgr.c b/src/common/assoc_mgr.c index 51dee578de1ad9b3e30972419b89a9039fefa905..befdea1a7ae054a082adf4cf74869cb0e9ae935c 100644 --- a/src/common/assoc_mgr.c +++ b/src/common/assoc_mgr.c @@ -1738,6 +1738,11 @@ extern int assoc_mgr_update_assocs(acct_update_object_t *update) list_iterator_reset(itr); } while((object = list_next(itr))) { + /* The root never changes so just continue + here. */ + if (object == assoc_mgr_root_assoc) + continue; + /* reset the limits because since a parent changed we could have different usage */ diff --git a/src/plugins/accounting_storage/mysql/mysql_jobacct_process.c b/src/plugins/accounting_storage/mysql/mysql_jobacct_process.c index b864235a6dd77f5fcb18050c8a17e1df4ea5c98b..d42e8c79e8621ce4c4de425454acc84bb98aaa4f 100644 --- a/src/plugins/accounting_storage/mysql/mysql_jobacct_process.c +++ b/src/plugins/accounting_storage/mysql/mysql_jobacct_process.c @@ -1059,6 +1059,7 @@ extern List mysql_jobacct_process_get_jobs(mysql_conn_t *mysql_conn, uid_t uid, continue; job = create_jobacct_job_rec(); + list_append(job_list, job); job->alloc_cpus = atoi(row[JOB_REQ_ALLOC_CPUS]); job->alloc_nodes = atoi(row[JOB_REQ_ALLOC_NODES]); @@ -1203,8 +1204,6 @@ extern List mysql_jobacct_process_get_jobs(mysql_conn_t *mysql_conn, uid_t uid, job->qos = atoi(row[JOB_REQ_QOS]); job->show_full = 1; - list_append(job_list, job); - if(job_cond && job_cond->step_list && list_count(job_cond->step_list)) { set = 0; diff --git a/src/plugins/priority/multifactor/priority_multifactor.c b/src/plugins/priority/multifactor/priority_multifactor.c index bfd306eb8df6ac76fb35424b214754a92682f2c0..aa0e7290a84188902f238c7aea49ffecf77a4d5f 100644 --- a/src/plugins/priority/multifactor/priority_multifactor.c +++ b/src/plugins/priority/multifactor/priority_multifactor.c @@ -749,6 +749,12 @@ static void *_decay_thread(void *no_data) slurm_mutex_lock(&assoc_mgr_association_lock); while(assoc) { + /* we don't want to make the + root assoc responsible for + keeping track of time + */ + if (assoc == assoc_mgr_root_assoc) + break; assoc->grp_used_wall += run_decay; assoc->usage_raw += (long double)real_decay; @@ -762,12 +768,6 @@ static void *_decay_thread(void *no_data) assoc->grp_used_wall); assoc = assoc->parent_assoc_ptr; - /* we don't want to make the - root assoc responsible for - keeping track of time - */ - if (assoc == assoc_mgr_root_assoc) - break; } slurm_mutex_unlock(&assoc_mgr_association_lock); } diff --git a/src/plugins/select/bluegene/plugin/bluegene.c b/src/plugins/select/bluegene/plugin/bluegene.c index 2b75c5c82847897cea2b4f227341a61647b64b68..334789b6d791e14227b72e463d4c23b643121f7e 100644 --- a/src/plugins/select/bluegene/plugin/bluegene.c +++ b/src/plugins/select/bluegene/plugin/bluegene.c @@ -1246,7 +1246,7 @@ extern int validate_current_blocks(char *dir) return SLURM_SUCCESS; last_config_update = time(NULL); - curr_block_list = list_create(NULL); + curr_block_list = list_create(destroy_bg_record); found_block_list = list_create(NULL); //#if 0 /* Check to see if the configs we have are correct */