From 5a579e4e306031b294e9b581a1d56a6a76a63876 Mon Sep 17 00:00:00 2001
From: Thomas Cadeau <thomas.cadeau@bull.net>
Date: Mon, 22 Jun 2015 12:35:16 -0700
Subject: [PATCH] Fix the calculation of job energy.

---
 src/common/slurm_jobacct_gather.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/common/slurm_jobacct_gather.c b/src/common/slurm_jobacct_gather.c
index c0e2b1b8a96..ea0cd978de0 100644
--- a/src/common/slurm_jobacct_gather.c
+++ b/src/common/slurm_jobacct_gather.c
@@ -1254,10 +1254,13 @@ extern void jobacctinfo_aggregate(jobacctinfo_t *dest, jobacctinfo_t *from)
 		dest->sys_cpu_usec -= 1E6;
 	}
 	dest->act_cpufreq 	+= from->act_cpufreq;
-	if (from->energy.consumed_energy == NO_VAL)
-		dest->energy.consumed_energy = NO_VAL;
-	else
-		dest->energy.consumed_energy += from->energy.consumed_energy;
+	if (dest->energy.consumed_energy != NO_VAL) {
+		if (from->energy.consumed_energy == NO_VAL)
+			dest->energy.consumed_energy = NO_VAL;
+		else
+			dest->energy.consumed_energy +=
+					from->energy.consumed_energy;
+	}
 
 	if (dest->max_disk_read < from->max_disk_read) {
 		dest->max_disk_read = from->max_disk_read;
-- 
GitLab