diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2022-03-08 07:46:37 +0100 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2022-03-08 07:46:37 +0100 |
commit | 4bbdb068edf29a882c002c99fe2a382a5ea11cd0 (patch) | |
tree | 604c82ca1a53d1c78e01a30cf271117ba4993913 /node-repository | |
parent | b0ab0dbaec9d19ecef0d274b513fd700f9752c6f (diff) |
Sort on node stats on secondary fields for consistent unit test results
Diffstat (limited to 'node-repository')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java | 7 | ||||
-rw-r--r-- | node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/stats.json | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java index ba8aa49d87c..338187c5270 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java @@ -12,6 +12,7 @@ import com.yahoo.vespa.hosted.provision.autoscale.NodeTimeseries; import java.time.Duration; import java.util.ArrayList; import java.util.Collections; +import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -122,6 +123,10 @@ public class NodeRepoStats { public static class ApplicationStats implements Comparable<ApplicationStats> { + private static final Comparator<ApplicationStats> comparator = Comparator.comparingDouble(ApplicationStats::unutilizedCost).reversed() + .thenComparingDouble(ApplicationStats::cost) + .thenComparing(ApplicationStats::id); + private final ApplicationId id; private final Load load; private final double cost; @@ -148,7 +153,7 @@ public class NodeRepoStats { @Override public int compareTo(NodeRepoStats.ApplicationStats other) { - return -Double.compare(this.unutilizedCost(), other.unutilizedCost()); + return comparator.compare(this, other); } } diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/stats.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/stats.json index 8867520fef6..8a46f8115be 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/stats.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/stats.json @@ -11,7 +11,7 @@ }, "applications": [ { - "id": "tenant3.application3.instance3", + "id": "tenant1.application1.instance1", "load": { "cpu": 0.0, "memory": 0.0, @@ -31,7 +31,7 @@ "unutilizedCost": 0.0 }, { - "id": "tenant4.application4.instance4", + "id": "tenant3.application3.instance3", "load": { "cpu": 0.0, "memory": 0.0, @@ -41,7 +41,7 @@ "unutilizedCost": 0.0 }, { - "id": "tenant1.application1.instance1", + "id": "tenant4.application4.instance4", "load": { "cpu": 0.0, "memory": 0.0, |