diff --git a/NEWS b/NEWS index 945e434f0181f3334d149b6765f5d0226a1d7503..3b80677e7f36a22953060448f7c343a031d776d9 100644 --- a/NEWS +++ b/NEWS @@ -77,6 +77,7 @@ documents those changes that are of interest to users and admins. safe version of the MySQL library is used. -- Remove libslurm.a, libpmi.a and libslurmdb.a from SLURM RPM. These static libraries are not generally usable. + -- Fixed bug in sacctmgr when zeroing raw usage reported by Gerrit Renker * Changes in SLURM 2.2.0.pre11 ============================== diff --git a/src/common/assoc_mgr.c b/src/common/assoc_mgr.c index b8ffecb90b2b41f92c11da8f1aabe0bf9ae589ea..f6803766682b4a720681253cc57d29d8fe73be37 100644 --- a/src/common/assoc_mgr.c +++ b/src/common/assoc_mgr.c @@ -2972,16 +2972,14 @@ static void _reset_children_usages(List childern_list) extern void assoc_mgr_remove_assoc_usage(slurmdb_association_rec_t *assoc) { + char *child; + char *child_str; long double old_usage_raw = 0.0; double old_grp_used_wall = 0.0; slurmdb_association_rec_t *sav_assoc = assoc; xassert(assoc); xassert(assoc->usage); - xassert(assoc->usage->parent_assoc_ptr); - - char *child; - char *child_str; if (assoc->user) { child = "user"; diff --git a/src/sacctmgr/common.c b/src/sacctmgr/common.c index 5ab51c63362027c3a78d8e205dff6fbed980e28e..08af8e130e339c9ff1ed652348e64f5186a2621f 100644 --- a/src/sacctmgr/common.c +++ b/src/sacctmgr/common.c @@ -630,7 +630,7 @@ extern int sacctmgr_remove_assoc_usage(slurmdb_association_cond_t *assoc_cond) itr = list_iterator_create(assoc_cond->cluster_list); itr2 = list_iterator_create(assoc_cond->acct_list); - if (!assoc_cond->user_list || !list_count(assoc_cond->user_list)) + if (assoc_cond->user_list && list_count(assoc_cond->user_list)) itr3 = list_iterator_create(assoc_cond->user_list); while((cluster = list_next(itr))) { cluster_rec = sacctmgr_find_cluster_from_list( @@ -645,8 +645,7 @@ extern int sacctmgr_remove_assoc_usage(slurmdb_association_cond_t *assoc_cond) update_list = list_create(slurmdb_destroy_update_object); update_obj = xmalloc(sizeof(slurmdb_update_object_t)); update_obj->type = SLURMDB_REMOVE_ASSOC_USAGE; - update_obj->objects = - list_create(slurmdb_destroy_association_rec); + update_obj->objects = list_create(NULL); if (itr3) { while ((user = list_next(itr3))) { @@ -702,7 +701,7 @@ end_it: list_iterator_destroy(itr); list_iterator_destroy(itr2); if (itr3) - list_iterator_reset(itr3); + list_iterator_destroy(itr3); list_destroy(local_assoc_list); list_destroy(local_cluster_list);