From 8db1dc2d05efe1609c59684230c8f0ea798b101b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 18 Nov 2022 12:00:28 +0000
Subject: [PATCH 01/13] ci: try to reactivate tests

---
 .gitlab-ci.yml | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9205243..9de590c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,4 +3,9 @@ image: oarteam/batsim_ci
 build:
   stage: build
   script:
-    - nix-build ./default.nix -A batmen
\ No newline at end of file
+    - nix-build ./default.nix -A batmen
+
+test:
+  stage: test
+  script:
+    - nix-shell --pure ./default.nix -A test --command 'pytest'
-- 
GitLab


From 93d9827a972c4dadfa5508377d9b5052b74662be Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 18 Nov 2022 12:08:05 +0000
Subject: [PATCH 02/13] ci: pytest html report available as artifact

---
 .gitlab-ci.yml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9de590c..87120fe 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,3 +9,6 @@ test:
   stage: test
   script:
     - nix-shell --pure ./default.nix -A test --command 'pytest'
+  artifacts:
+    paths:
+      - test-out/test_report.html
-- 
GitLab


From 64b7bbfc6b3c30154dd94663db325eda43e57e84 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 18 Nov 2022 14:06:27 +0000
Subject: [PATCH 03/13] ci: try to see if test stage has access to batmen
 executable

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 87120fe..813a34f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,7 +8,7 @@ build:
 test:
   stage: test
   script:
-    - nix-shell --pure ./default.nix -A test --command 'pytest'
+    - nix-shell  ./default.nix --pure -A test_rebuild --command 'batmen --help'
   artifacts:
     paths:
       - test-out/test_report.html
-- 
GitLab


From ee313d3a463ac08e60b51747a3188638f3eede23 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 18 Nov 2022 14:21:01 +0000
Subject: [PATCH 04/13] ci: try to make test stage not rebuild the whole thing

---
 .gitlab-ci.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 813a34f..de440be 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,11 +4,12 @@ build:
   stage: build
   script:
     - nix-build ./default.nix -A batmen
+    - mkdir -p build && mv result/bin/batmen build/batmen
 
 test:
   stage: test
   script:
-    - nix-shell  ./default.nix --pure -A test_rebuild --command 'batmen --help'
+    - nix-shell  ./default.nix --pure -A test --command 'batmen --help'
   artifacts:
     paths:
       - test-out/test_report.html
-- 
GitLab


From 0350217ebaa4adb940d8acf6007d402af8c88ee9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 17:59:59 +0000
Subject: [PATCH 05/13] ci: try with build and test in the same job

---
 .gitlab-ci.yml | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index de440be..418afdd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,15 +1,20 @@
 image: oarteam/batsim_ci
 
-build:
-  stage: build
+stages:
+  - build-and-test
+
+# unfortunately, it's difficult to create two separate jobs for building and testing
+# because the jobs will start again with a clean nix-store.. 
+build-and-test:
+  stage: build-and-test 
   script:
+    # Build batmen
     - nix-build ./default.nix -A batmen
     - mkdir -p build && mv result/bin/batmen build/batmen
 
-test:
-  stage: test
-  script:
-    - nix-shell  ./default.nix --pure -A test --command 'batmen --help'
+    # Test
+    - nix-shell ./default.nix --pure -A test --command 'batmen --help'
+
   artifacts:
     paths:
       - test-out/test_report.html
-- 
GitLab


From feec8487d2c3a14d72539728a90ddb0c980e32c3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 18:06:27 +0000
Subject: [PATCH 06/13] ci: test and build in one command

---
 .gitlab-ci.yml | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 418afdd..692c206 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,12 +8,16 @@ stages:
 build-and-test:
   stage: build-and-test 
   script:
-    # Build batmen
-    - nix-build ./default.nix -A batmen
-    - mkdir -p build && mv result/bin/batmen build/batmen
+    #### In one command ####
+    - nix-shell ./default.nix --pure -A test_rebuild --command 'pytest'
 
-    # Test
-    - nix-shell ./default.nix --pure -A test --command 'batmen --help'
+    #### In two separate commands ####
+    ## Build batmen
+    #- nix-build ./default.nix -A batmen
+    #- mkdir -p build && mv result/bin/batmen build/batmen
+
+    ## Test
+    #- nix-shell ./default.nix --pure -A test --command 'pytest'
 
   artifacts:
     paths:
-- 
GitLab


From abcf4cb3b3ed03636ce52617fa3660e44215c577 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 18:13:46 +0000
Subject: [PATCH 07/13] ci: make test-out available as artifact

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 692c206..b879712 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -21,4 +21,4 @@ build-and-test:
 
   artifacts:
     paths:
-      - test-out/test_report.html
+      - test-out/
-- 
GitLab


From 5f92e3b84f42f61c6f408fe2c9e503efb55ac92a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 18:25:17 +0000
Subject: [PATCH 08/13] ci: upload artifact even on failure

---
 .gitlab-ci.yml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b879712..54157bc 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,6 +19,8 @@ build-and-test:
     ## Test
     #- nix-shell ./default.nix --pure -A test --command 'pytest'
 
+  allow_failure: true
   artifacts:
+    when: always
     paths:
       - test-out/
-- 
GitLab


From 1965eba7a53c0bb2aa6b0760669612d26563e51c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 19:59:26 +0100
Subject: [PATCH 09/13] test: fix bad path for expected-log

---
 test/helper.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/helper.py b/test/helper.py
index f057016..ffe972e 100644
--- a/test/helper.py
+++ b/test/helper.py
@@ -59,7 +59,7 @@ def init_instance(test_name):
     return (output_dir, robin_filename, schedconf_filename)
 
 def has_expected_output(test_file):
-    return os.path.exists('test/expected_log/' + test_file + '/_jobs.csv')
+    return os.path.exists('test/expected_log/' + test_file + '_jobs.csv')
 
 def assert_expected_output(test_file):
     expected = 'test/expected_log/' + test_file + '_jobs.csv'
-- 
GitLab


From b3fb68f3435774712ad62daad79c198ccf7f1d3a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Mon, 21 Nov 2022 20:03:53 +0100
Subject: [PATCH 10/13] test: add test_expected_output to broker tests

---
 test/test_broker.py           | 6 ++++++
 test/test_schedulers_multi.py | 6 +++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/test/test_broker.py b/test/test_broker.py
index 6866ae6..fc72749 100644
--- a/test/test_broker.py
+++ b/test/test_broker.py
@@ -23,6 +23,9 @@ def test_broker_mono(platform_monoC, workload_static, sched_mono):
     ret = run_robin(robin_filename)
     assert ret.returncode == 0
 
+    if has_expected_output(test_name):
+        assert_expected_output(test_name)
+
 
 def test_broker_multi(platform_multiC, workload_static, sched_multi):
     """Test the broker mode with multicore platform files and schedulers"""
@@ -41,3 +44,6 @@ def test_broker_multi(platform_multiC, workload_static, sched_multi):
     instance.to_file(robin_filename)
     ret = run_robin(robin_filename)
     assert ret.returncode == 0
+
+    if has_expected_output(test_name):
+        assert_expected_output(test_name)
diff --git a/test/test_schedulers_multi.py b/test/test_schedulers_multi.py
index f2b646e..ce0f4b0 100644
--- a/test/test_schedulers_multi.py
+++ b/test/test_schedulers_multi.py
@@ -21,7 +21,7 @@ def test_multicore_filler(platform_multiC, workload_static):
     assert ret.returncode == 0
 
     if has_expected_output(test_name):
-        assert assert_expected_output(test_name)
+        assert_expected_output(test_name)
 
 
 def test_bin_packing(platform_multiC, workload_static):
@@ -44,7 +44,7 @@ def test_bin_packing(platform_multiC, workload_static):
     assert ret.returncode == 0
 
     if has_expected_output(test_name):
-        assert assert_expected_output(test_name)
+        assert_expected_output(test_name)
 
 
 def test_bin_packing_energy(platform_multiC, workload_static):
@@ -67,4 +67,4 @@ def test_bin_packing_energy(platform_multiC, workload_static):
     assert ret.returncode == 0
 
     if has_expected_output(test_name):
-        assert assert_expected_output(test_name)
+        assert_expected_output(test_name)
-- 
GitLab


From 15db9aa2360498f2835c5b0d65ae7df8592b8e90 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 2 Dec 2022 12:45:02 +0100
Subject: [PATCH 11/13] fix: add determinism in batmen

---
 src/broker/cloud_broker.cpp |  4 ++++
 src/json_workload.cpp       |  2 +-
 src/queue.cpp               | 10 ++++++++--
 3 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/broker/cloud_broker.cpp b/src/broker/cloud_broker.cpp
index d610ce2..00ebeba 100644
--- a/src/broker/cloud_broker.cpp
+++ b/src/broker/cloud_broker.cpp
@@ -188,7 +188,11 @@ void CloudBroker::jobs_to_submit(
         user = user_queue.front();
     }
 
+    /* Reorder the user queue */
     user_queue.sort(CompareUsers());
+
+    /* Sort the jobs before sending them to submission, for determinism */
+    jobs.sort(JobComparator());
 }
 
 void CloudBroker::feedback_job_status(double date,
diff --git a/src/json_workload.cpp b/src/json_workload.cpp
index 79a590c..3c020a6 100644
--- a/src/json_workload.cpp
+++ b/src/json_workload.cpp
@@ -177,7 +177,7 @@ Job *Workload::job_from_json_object(const Value &object)
 
 bool JobComparator::operator()(const Job *j1, const Job *j2) const
 {
-    return j1->unique_number < j2->unique_number;
+    return j1->id < j2->id;
 }
 
 bool SessionComparator::operator()(const Session *s1, const Session *s2) const
diff --git a/src/queue.cpp b/src/queue.cpp
index 4ae78a5..4db4e70 100644
--- a/src/queue.cpp
+++ b/src/queue.cpp
@@ -137,7 +137,10 @@ bool AscendingSizeOrder::compare(const SortableJob *j1, const SortableJob *j2, c
     (void) info;
 
     if (j1->job->nb_requested_resources == j2->job->nb_requested_resources)
-        return j1->job->submission_time < j2->job->submission_time;
+        if (j1->job->submission_time == j2->job->submission_time)
+            return j1->job->id < j2->job->id;
+        else
+            return j1->job->submission_time < j2->job->submission_time;
     else
         return j1->job->nb_requested_resources < j2->job->nb_requested_resources;
 }
@@ -159,7 +162,10 @@ bool DescendingSizeOrder::compare(const SortableJob *j1, const SortableJob *j2,
     (void) info;
 
     if (j1->job->nb_requested_resources == j2->job->nb_requested_resources)
-        return j1->job->submission_time < j2->job->submission_time;
+        if (j1->job->submission_time == j2->job->submission_time)
+            return j1->job->id < j2->job->id;
+        else
+            return j1->job->submission_time < j2->job->submission_time;
     else
         return j1->job->nb_requested_resources > j2->job->nb_requested_resources;
 }
-- 
GitLab


From d5ab721bc2eea800ea7542808cf6e4501b9ae2bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 2 Dec 2022 15:30:05 +0100
Subject: [PATCH 12/13] fix: deterministic job oders

---
 src/json_workload.cpp | 13 ++++++++++++-
 src/queue.cpp         | 16 ++++++++--------
 src/queue.hpp         |  5 ++++-
 3 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/src/json_workload.cpp b/src/json_workload.cpp
index 3c020a6..0446f9d 100644
--- a/src/json_workload.cpp
+++ b/src/json_workload.cpp
@@ -177,7 +177,18 @@ Job *Workload::job_from_json_object(const Value &object)
 
 bool JobComparator::operator()(const Job *j1, const Job *j2) const
 {
-    return j1->id < j2->id;
+    PPK_ASSERT_ERROR(j1->id.find('!') != string::npos,
+        "I thought jobID had always a form 'wl!id'...");
+
+    string id1 = j1->id.substr(j1->id.find('!') + 1, j1->id.size());
+    string id2 = j2->id.substr(j2->id.find('!') + 1, j2->id.size());
+
+    if (id1 == id2) /* different workload, same job number: comp on wl name */
+        return j1->id < j2->id;
+    if (id1.length() == id2.length()) /* same length: lexicographic order */
+        return id1 < id2;
+    return id1.length() < id2.length();
+
 }
 
 bool SessionComparator::operator()(const Session *s1, const Session *s2) const
diff --git a/src/queue.cpp b/src/queue.cpp
index 4db4e70..4b25b42 100644
--- a/src/queue.cpp
+++ b/src/queue.cpp
@@ -45,7 +45,7 @@ bool FCFSOrder::compare(const SortableJob *j1, const SortableJob *j2, const Sort
     (void) info;
 
     if (j1->release_date == j2->release_date)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->release_date < j2->release_date;
 }
@@ -67,7 +67,7 @@ bool LCFSOrder::compare(const SortableJob *j1, const SortableJob *j2, const Sort
     (void) info;
 
     if (j1->release_date == j2->release_date)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->release_date > j2->release_date;
 }
@@ -95,7 +95,7 @@ bool DescendingBoundedSlowdownOrder::compare(const SortableJob *j1, const Sortab
     (void) info;
 
     if (j1->bounded_slowdown == j2->bounded_slowdown)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->bounded_slowdown > j2->bounded_slowdown;
 }
@@ -116,7 +116,7 @@ bool DescendingSlowdownOrder::compare(const SortableJob *j1, const SortableJob *
     (void) info;
 
     if (j1->slowdown == j2->slowdown)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->slowdown > j2->slowdown;
 }
@@ -138,7 +138,7 @@ bool AscendingSizeOrder::compare(const SortableJob *j1, const SortableJob *j2, c
 
     if (j1->job->nb_requested_resources == j2->job->nb_requested_resources)
         if (j1->job->submission_time == j2->job->submission_time)
-            return j1->job->id < j2->job->id;
+            return jobcmp(j1->job, j2->job);
         else
             return j1->job->submission_time < j2->job->submission_time;
     else
@@ -163,7 +163,7 @@ bool DescendingSizeOrder::compare(const SortableJob *j1, const SortableJob *j2,
 
     if (j1->job->nb_requested_resources == j2->job->nb_requested_resources)
         if (j1->job->submission_time == j2->job->submission_time)
-            return j1->job->id < j2->job->id;
+            return jobcmp(j1->job, j2->job);
         else
             return j1->job->submission_time < j2->job->submission_time;
     else
@@ -187,7 +187,7 @@ bool AscendingWalltimeOrder::compare(const SortableJob *j1, const SortableJob *j
     (void) info;
 
     if (j1->job->walltime == j2->job->walltime)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->job->walltime < j2->job->walltime;
 }
@@ -209,7 +209,7 @@ bool DescendingWalltimeOrder::compare(const SortableJob *j1, const SortableJob *
     (void) info;
 
     if (j1->job->walltime == j2->job->walltime)
-        return j1->job->id < j2->job->id;
+        return jobcmp(j1->job, j2->job);
     else
         return j1->job->walltime > j2->job->walltime;
 }
diff --git a/src/queue.hpp b/src/queue.hpp
index a99be23..2c17c1a 100644
--- a/src/queue.hpp
+++ b/src/queue.hpp
@@ -2,7 +2,7 @@
 
 #include <list>
 
-struct Job;
+#include "json_workload.hpp"
 
 #include "schedule.hpp"
 
@@ -37,6 +37,9 @@ public:
     virtual ~SortableJobOrder();
     virtual bool compare(const SortableJob * j1, const SortableJob * j2, const CompareInformation * info = nullptr) const = 0;
     virtual void updateJob(SortableJob * job, const UpdateInformation * info = nullptr) const = 0;
+
+protected:
+    JobComparator jobcmp;
 };
 
 class FCFSOrder : public SortableJobOrder
-- 
GitLab


From 95d55459eed2ef3b36363d65a992c5ec2961ed22 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=ABl=20Madon?= <mael.madon@irit.fr>
Date: Fri, 2 Dec 2022 16:20:26 +0100
Subject: [PATCH 13/13] test: adapted expected logs to new job order

---
 .../bin_packing-2machines-para_homo_jobs.csv         |  2 +-
 .../bin_packing_energy-2machines-para_homo_jobs.csv  |  2 +-
 .../broker-bpNRJ-2machines-para_homo_jobs.csv        |  4 ++--
 .../cocktail_user_model-2machines_jobs.csv           |  6 +++---
 .../fb_user_think_time_only-many_following_jobs.csv  |  4 ++--
 .../fb_user_think_time_only-many_preceding_jobs.csv  |  6 +++---
 ...user_think_time_only-many_start_sessions_jobs.csv |  6 +++---
 .../multicore_filler-2machines-para_homo_jobs.csv    | 12 ++++++------
 test/expected_log/routine_greedy-2machines_jobs.csv  |  8 ++++----
 9 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/test/expected_log/bin_packing-2machines-para_homo_jobs.csv b/test/expected_log/bin_packing-2machines-para_homo_jobs.csv
index c43e8b8..9523f91 100644
--- a/test/expected_log/bin_packing-2machines-para_homo_jobs.csv
+++ b/test/expected_log/bin_packing-2machines-para_homo_jobs.csv
@@ -5,8 +5,8 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 1,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,0,687380.500000,""
 2,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,1,687380.500000,""
 3,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,1,687380.500000,""
-11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,2213.000000,8213.000000,0.000000,2213.000000,1.000000,0,480221.000000,""
 9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,2213.000000,8213.000000,0.000000,2213.000000,1.000000,0,480221.000000,""
+11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,2213.000000,8213.000000,0.000000,2213.000000,1.000000,0,480221.000000,""
 4,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,7043.000000,13043.000000,0.000000,7043.000000,1.000000,1,1116315.500000,""
 5,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,7043.000000,13043.000000,0.000000,7043.000000,1.000000,1,1116315.500000,""
 6,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6000.000000,7043.000000,13043.000000,0.000000,7043.000000,1.000000,1,1116315.500000,""
diff --git a/test/expected_log/bin_packing_energy-2machines-para_homo_jobs.csv b/test/expected_log/bin_packing_energy-2machines-para_homo_jobs.csv
index be6a496..c072e09 100644
--- a/test/expected_log/bin_packing_energy-2machines-para_homo_jobs.csv
+++ b/test/expected_log/bin_packing_energy-2machines-para_homo_jobs.csv
@@ -5,8 +5,8 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 1,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,0,687380.500000,""
 2,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,1,687380.500000,""
 3,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,0.000000,3520.000000,3520.000000,0.000000,3520.000000,1.000000,1,687380.500000,""
-11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,2213.000000,8363.000000,150.000000,2363.000000,1.067781,0,480221.000000,""
 9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,2213.000000,8363.000000,150.000000,2363.000000,1.067781,0,480221.000000,""
+11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,2213.000000,8363.000000,150.000000,2363.000000,1.067781,0,480221.000000,""
 4,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,7043.000000,13193.000000,150.000000,7193.000000,1.021298,1,1116315.500000,""
 5,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,7043.000000,13193.000000,150.000000,7193.000000,1.021298,1,1116315.500000,""
 6,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,7043.000000,13193.000000,150.000000,7193.000000,1.021298,1,1116315.500000,""
diff --git a/test/expected_log/broker-bpNRJ-2machines-para_homo_jobs.csv b/test/expected_log/broker-bpNRJ-2machines-para_homo_jobs.csv
index 4193aa7..566e7ac 100644
--- a/test/expected_log/broker-bpNRJ-2machines-para_homo_jobs.csv
+++ b/test/expected_log/broker-bpNRJ-2machines-para_homo_jobs.csv
@@ -65,8 +65,8 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 65,bob1,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,1,21700.000000,""
 66,bob1,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,1,21700.000000,""
 67,bob1,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8085.000000,100.000000,8185.000000,85.000000,185.000000,1.850000,0,21078.437500,""
-11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6087.500000,2213.000000,8300.500000,87.500000,2300.500000,1.039539,0,454437.125000,""
-9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,2213.000000,8363.000000,150.000000,2363.000000,1.067781,1,396288.125000,""
+9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6087.500000,2213.000000,8300.500000,87.500000,2300.500000,1.039539,0,454437.125000,""
+11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,6150.000000,2213.000000,8363.000000,150.000000,2363.000000,1.067781,1,396288.125000,""
 8,alice,100_sec,8993.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8993.000000,100.000000,9093.000000,0.000000,100.000000,1.000000,0,20559.250000,""
 68,bob1,100_sec,9000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,9000.000000,100.000000,9100.000000,0.000000,100.000000,1.000000,0,20917.562500,""
 69,bob1,100_sec,9000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,9000.000000,100.000000,9100.000000,0.000000,100.000000,1.000000,0,20917.562500,""
diff --git a/test/expected_log/cocktail_user_model-2machines_jobs.csv b/test/expected_log/cocktail_user_model-2machines_jobs.csv
index 4a19869..8ee91af 100644
--- a/test/expected_log/cocktail_user_model-2machines_jobs.csv
+++ b/test/expected_log/cocktail_user_model-2machines_jobs.csv
@@ -13,6 +13,7 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 2,alice,100_sec,1500.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,1500.000000,100.000000,1600.000000,0.000000,100.000000,1.000000,0,10731.250000,""
 3,alice,100_sec,1750.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,1750.000000,100.000000,1850.000000,0.000000,100.000000,1.000000,0,10731.250000,""
 4,alice,100_sec,1875.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,1875.000000,100.000000,1975.000000,0.000000,100.000000,1.000000,0,10731.250000,""
+3,caty,100_sec,2000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 6,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 7,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 8,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
@@ -21,7 +22,6 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 11,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 12,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 13,bob,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
-3,caty,100_sec,2000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 5,alice,100_sec,2000.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.500000,100.000000,2100.500000,0.000000,100.000000,1.000000,0,17279.593750,""
 6,alice,100_sec,2157.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2157.500000,100.000000,2257.500000,0.000000,100.000000,1.000000,0,10731.250000,""
 7,alice,100_sec,2283.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2283.000000,100.000000,2383.000000,0.000000,100.000000,1.000000,0,10731.250000,""
@@ -70,6 +70,7 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 30,alice,100_sec,4791.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,4791.500000,100.000000,4891.500000,0.000000,100.000000,1.000000,0,10731.250000,""
 31,alice,100_sec,4892.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,4892.000000,100.000000,4992.000000,0.000000,100.000000,1.000000,0,10731.250000,""
 32,alice,100_sec,4992.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,4992.500000,100.000000,5092.500000,0.000000,100.000000,1.000000,0,16818.906250,""
+8,caty,100_sec,5000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 38,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 39,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 40,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
@@ -78,7 +79,6 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 43,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 44,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 45,bob,100_sec,5000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
-8,caty,100_sec,5000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,100.000000,5100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 33,alice,100_sec,5093.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5093.000000,100.000000,5193.000000,0.000000,100.000000,1.000000,0,11191.937500,""
 34,alice,100_sec,5193.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5193.500000,100.000000,5293.500000,0.000000,100.000000,1.000000,0,10731.250000,""
 35,alice,100_sec,5294.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,5294.000000,100.000000,5394.000000,0.000000,100.000000,1.000000,0,10731.250000,""
@@ -128,6 +128,7 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 59,alice,100_sec,7706.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,7706.000000,100.000000,7806.000000,0.000000,100.000000,1.000000,0,10731.250000,""
 60,alice,100_sec,7806.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,7806.500000,100.000000,7906.500000,0.000000,100.000000,1.000000,0,10731.250000,""
 61,alice,100_sec,7907.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,7907.000000,100.000000,8007.000000,0.000000,100.000000,1.000000,0,11191.937500,""
+13,caty,100_sec,8000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 78,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 79,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 80,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
@@ -136,7 +137,6 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 83,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 84,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 85,bob,100_sec,8000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
-13,caty,100_sec,8000.000000,1,-1.000000,1,COMPLETED_SUCCESSFULLY,8000.000000,100.000000,8100.000000,0.000000,100.000000,1.000000,0,17308.843750,""
 62,alice,100_sec,8007.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8007.500000,100.000000,8107.500000,0.000000,100.000000,1.000000,0,16818.906250,""
 63,alice,100_sec,8108.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8108.000000,100.000000,8208.000000,0.000000,100.000000,1.000000,0,10731.250000,""
 64,alice,100_sec,8208.500000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,8208.500000,100.000000,8308.500000,0.000000,100.000000,1.000000,0,10731.250000,""
diff --git a/test/expected_log/fb_user_think_time_only-many_following_jobs.csv b/test/expected_log/fb_user_think_time_only-many_following_jobs.csv
index 7579f12..6bb6b5b 100644
--- a/test/expected_log/fb_user_think_time_only-many_following_jobs.csv
+++ b/test/expected_log/fb_user_think_time_only-many_following_jobs.csv
@@ -1,7 +1,7 @@
 job_id,workload_name,profile,submission_time,requested_number_of_resources,requested_time,success,final_state,starting_time,execution_time,finish_time,waiting_time,turnaround_time,stretch,allocated_resources,consumed_energy,metadata
 1:s1,fb_user_think_time_only,1000,0.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,0.000000,1000.000000,1000.000000,0.000000,1000.000000,1.000000,0,217000.000000,""
-4:s4,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,0.000000,1000.000000,1.000000,1,217000.000000,""
+3:s3,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,0.000000,1000.000000,1.000000,1,217000.000000,""
 2:s2,fb_user_think_time_only,2000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,2000.000000,4000.000000,0.000000,2000.000000,1.000000,0,434000.000000,""
-3:s3,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
+4:s4,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
 5:s5,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,4000.000000,1000.000000,5000.000000,2000.000000,3000.000000,3.000000,0,217000.000000,""
 6:s6,fb_user_think_time_only,1000,3000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,4000.000000,1000.000000,5000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
diff --git a/test/expected_log/fb_user_think_time_only-many_preceding_jobs.csv b/test/expected_log/fb_user_think_time_only-many_preceding_jobs.csv
index 0fae0f7..a874b8f 100644
--- a/test/expected_log/fb_user_think_time_only-many_preceding_jobs.csv
+++ b/test/expected_log/fb_user_think_time_only-many_preceding_jobs.csv
@@ -1,7 +1,7 @@
 job_id,workload_name,profile,submission_time,requested_number_of_resources,requested_time,success,final_state,starting_time,execution_time,finish_time,waiting_time,turnaround_time,stretch,allocated_resources,consumed_energy,metadata
 1:s1,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,1000.000000,2000.000000,0.000000,1000.000000,1.000000,0,217000.000000,""
-3:s3,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,1000.000000,2000.000000,0.000000,1000.000000,1.000000,1,217000.000000,""
-4:s4,fb_user_think_time_only,1000,1500.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,500.000000,1500.000000,1.500000,1,217000.000000,""
-2:s2,fb_user_think_time_only,2000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,2000.000000,4000.000000,1000.000000,3000.000000,1.500000,0,434000.000000,""
+2:s2,fb_user_think_time_only,2000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,2000.000000,3000.000000,0.000000,2000.000000,1.000000,1,434000.000000,""
+3:s3,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,1000.000000,2000.000000,2.000000,0,217000.000000,""
+4:s4,fb_user_think_time_only,1000,1500.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1500.000000,2500.000000,2.500000,0,217000.000000,""
 5:s5,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
 6:s6,fb_user_think_time_only,1000,5000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,5000.000000,1000.000000,6000.000000,0.000000,1000.000000,1.000000,0,217000.000000,""
diff --git a/test/expected_log/fb_user_think_time_only-many_start_sessions_jobs.csv b/test/expected_log/fb_user_think_time_only-many_start_sessions_jobs.csv
index 2d9681b..4c2a974 100644
--- a/test/expected_log/fb_user_think_time_only-many_start_sessions_jobs.csv
+++ b/test/expected_log/fb_user_think_time_only-many_start_sessions_jobs.csv
@@ -1,6 +1,6 @@
 job_id,workload_name,profile,submission_time,requested_number_of_resources,requested_time,success,final_state,starting_time,execution_time,finish_time,waiting_time,turnaround_time,stretch,allocated_resources,consumed_energy,metadata
-1:s1,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,1000.000000,2000.000000,0.000000,1000.000000,1.000000,1,217000.000000,""
-2:s2,fb_user_think_time_only,2000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,2000.000000,3000.000000,0.000000,2000.000000,1.000000,0,434000.000000,""
-3:s3,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
+1:s1,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,1000.000000,2000.000000,0.000000,1000.000000,1.000000,0,217000.000000,""
+2:s2,fb_user_think_time_only,2000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,1000.000000,2000.000000,3000.000000,0.000000,2000.000000,1.000000,1,434000.000000,""
+3:s3,fb_user_think_time_only,1000,1000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,1000.000000,3000.000000,1000.000000,2000.000000,2.000000,0,217000.000000,""
 4:s4,fb_user_think_time_only,1000,1500.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1500.000000,2500.000000,2.500000,0,217000.000000,""
 5:s5,fb_user_think_time_only,1000,2000.000000,16,2592000.000000,1,COMPLETED_SUCCESSFULLY,3000.000000,1000.000000,4000.000000,1000.000000,2000.000000,2.000000,1,217000.000000,""
diff --git a/test/expected_log/multicore_filler-2machines-para_homo_jobs.csv b/test/expected_log/multicore_filler-2machines-para_homo_jobs.csv
index 4bc200b..8307607 100644
--- a/test/expected_log/multicore_filler-2machines-para_homo_jobs.csv
+++ b/test/expected_log/multicore_filler-2machines-para_homo_jobs.csv
@@ -5,12 +5,12 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 3,w0,blast_vm_large,0.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,10560.000000,3520.000000,14080.000000,10560.000000,14080.000000,4.000000,0,454960.000000,""
 8,w0,blast_vm_xlarge,0.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,14080.000000,2213.000000,16293.000000,14080.000000,16293.000000,7.362404,0,350760.500000,""
 10,w0,blast_vm_xlarge,1000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,16293.000000,2213.000000,18506.000000,15293.000000,17506.000000,7.910529,0,350760.500000,""
-11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,18506.000000,2213.000000,20719.000000,12506.000000,14719.000000,6.651152,0,350760.500000,""
-4,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,20719.000000,7043.000000,27762.000000,14719.000000,21762.000000,3.089876,0,807303.875000,""
-5,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,27762.000000,7043.000000,34805.000000,21762.000000,28805.000000,4.089876,0,807303.875000,""
-6,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,34805.000000,7043.000000,41848.000000,28805.000000,35848.000000,5.089876,0,807303.875000,""
-7,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,41848.000000,7043.000000,48891.000000,35848.000000,42891.000000,6.089876,0,807303.875000,""
-9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,48891.000000,2213.000000,51104.000000,42891.000000,45104.000000,20.381383,0,350760.500000,""
+4,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,18506.000000,7043.000000,25549.000000,12506.000000,19549.000000,2.775664,0,807303.875000,""
+5,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,25549.000000,7043.000000,32592.000000,19549.000000,26592.000000,3.775664,0,807303.875000,""
+6,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,32592.000000,7043.000000,39635.000000,26592.000000,33635.000000,4.775664,0,807303.875000,""
+7,w0,blast_vm_medium,6000.000000,2,-1.000000,1,COMPLETED_SUCCESSFULLY,39635.000000,7043.000000,46678.000000,33635.000000,40678.000000,5.775664,0,807303.875000,""
+9,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,46678.000000,2213.000000,48891.000000,40678.000000,42891.000000,19.381383,0,350760.500000,""
+11,w0,blast_vm_xlarge,6000.000000,8,-1.000000,1,COMPLETED_SUCCESSFULLY,48891.000000,2213.000000,51104.000000,42891.000000,45104.000000,20.381383,0,350760.500000,""
 12,w0,blast_vm_large,14000.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,51104.000000,3520.000000,54624.000000,37104.000000,40624.000000,11.540909,0,454960.000000,""
 13,w0,blast_vm_large,14000.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,54624.000000,3520.000000,58144.000000,40624.000000,44144.000000,12.540909,0,454960.000000,""
 14,w0,blast_vm_large,14000.000000,4,-1.000000,1,COMPLETED_SUCCESSFULLY,58144.000000,3520.000000,61664.000000,44144.000000,47664.000000,13.540909,0,454960.000000,""
diff --git a/test/expected_log/routine_greedy-2machines_jobs.csv b/test/expected_log/routine_greedy-2machines_jobs.csv
index c67a235..e22260e 100644
--- a/test/expected_log/routine_greedy-2machines_jobs.csv
+++ b/test/expected_log/routine_greedy-2machines_jobs.csv
@@ -33,14 +33,14 @@ job_id,workload_name,profile,submission_time,requested_number_of_resources,reque
 7,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 8,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 9,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
-10,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
-11,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
-12,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
-13,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 9,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
+10,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 10,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
+11,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 11,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
+12,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 12,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
+13,bob1,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 13,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 14,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
 15,bob2,100_sec,2000.000000,1,3600.000000,1,COMPLETED_SUCCESSFULLY,2000.000000,100.000000,2100.000000,0.000000,100.000000,1.000000,0,21700.000000,""
-- 
GitLab