summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2023-01-06 13:41:50 +0100
committerJon Bratseth <bratseth@gmail.com>2023-01-06 13:41:50 +0100
commit5aa8ec40e24c26cdeb5b99da0e013e13f58bb673 (patch)
tree0de2d0566a3f740432bb2ae83b2de0cf4ed474ba /node-repository
parent7d839355259eca823da9396c1ed15b43f7c98768 (diff)
Log in deficit
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/GroupPreparer.java3
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeAllocation.java6
2 files changed, 9 insertions, 0 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/GroupPreparer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/GroupPreparer.java
index 15e508fadf1..46cc32c7156 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/GroupPreparer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/GroupPreparer.java
@@ -109,6 +109,9 @@ public class GroupPreparer {
HostSharing sharing = hostSharing(cluster, hostType);
Version osVersion = nodeRepository.osVersions().targetFor(hostType).orElse(Version.emptyVersion);
NodeAllocation.HostDeficit deficit = allocation.hostDeficit().get();
+ // TODO: Remove
+ log.info("In " + application + ": " + deficit + ": " +
+ allocation.lastOffered().stream().map(n -> n.toString() + "[resizable: " + n.isResizable).collect(Collectors.joining(", ")));
List<Node> hosts = new ArrayList<>();
Consumer<List<ProvisionedHost>> provisionedHostsConsumer = provisionedHosts -> {
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeAllocation.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeAllocation.java
index 61ca7c914c0..63d5db09380 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeAllocation.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeAllocation.java
@@ -84,6 +84,8 @@ class NodeAllocation {
private final NodeResourceLimits nodeResourceLimits;
private final Optional<String> requiredHostFlavor;
+ private List<NodeCandidate> lastOffered;
+
NodeAllocation(NodesAndHosts<? extends NodeList> allNodesAndHosts, ApplicationId application, ClusterSpec cluster, NodeSpec requestedNodes,
Supplier<Integer> nextIndex, NodeRepository nodeRepository) {
this.allNodesAndHosts = allNodesAndHosts;
@@ -98,6 +100,7 @@ class NodeAllocation {
.with(FetchVector.Dimension.CLUSTER_TYPE, cluster.type().name())
.value())
.filter(s -> !s.isBlank());
+ this.lastOffered = List.of();
}
/**
@@ -110,6 +113,7 @@ class NodeAllocation {
* @param candidates the nodes which are potentially on offer. These may belong to a different application etc.
*/
void offer(List<NodeCandidate> candidates) {
+ lastOffered = List.copyOf(candidates);
for (NodeCandidate candidate : candidates) {
if (candidate.allocation().isPresent()) {
Allocation allocation = candidate.allocation().get();
@@ -158,6 +162,8 @@ class NodeAllocation {
}
}
+ public List<NodeCandidate> lastOffered() { return lastOffered; }
+
/** Returns the cause of retirement for given candidate */
private Retirement shouldRetire(NodeCandidate candidate, List<NodeCandidate> candidates) {
if ( ! requestedNodes.considerRetiring()) {