aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-10-12 19:30:11 +0200
committerjonmv <venstad@gmail.com>2023-10-12 19:30:11 +0200
commit8d472a52c97fe359d770e61a6e70d2d75987890f (patch)
tree51ede718a0f3288c263a51e9e10567e42b810959 /node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance
parent29db2908a03d26478ca4e59454e057c0f0ca8bbf (diff)
Check for exclusivity violation in host capacity maintainer
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/HostCapacityMaintainer.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/HostCapacityMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/HostCapacityMaintainer.java
index 25cfcf2cda9..c661cc6ae49 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/HostCapacityMaintainer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/HostCapacityMaintainer.java
@@ -285,7 +285,13 @@ public class HostCapacityMaintainer extends NodeRepositoryMaintainer {
NodePrioritizer prioritizer = new NodePrioritizer(allNodes, applicationId, clusterSpec, nodeSpec,
true, allocationContext, nodeRepository().nodes(), nodeRepository().resourcesCalculator(),
nodeRepository().spareCount());
- List<NodeCandidate> nodeCandidates = prioritizer.collect();
+ List<NodeCandidate> nodeCandidates = prioritizer.collect().stream()
+ .filter(node -> ! node.violatesExclusivity(clusterSpec,
+ applicationId,
+ nodeRepository().exclusiveAllocation(clusterSpec),
+ nodeRepository().zone().cloud().allowHostSharing(),
+ allNodes))
+ .toList();
MutableInteger index = new MutableInteger(0);
return nodeCandidates
.stream()