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);