aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2022-03-08 07:46:37 +0100
committerJon Marius Venstad <venstad@gmail.com>2022-03-08 07:46:37 +0100
commit4bbdb068edf29a882c002c99fe2a382a5ea11cd0 (patch)
tree604c82ca1a53d1c78e01a30cf271117ba4993913 /node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java
parentb0ab0dbaec9d19ecef0d274b513fd700f9752c6f (diff)
Sort on node stats on secondary fields for consistent unit test results
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepoStats.java7
1 files changed, 6 insertions, 1 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);
}
}