aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@yahooinc.com>2022-11-03 13:09:25 +0100
committerValerij Fredriksen <valerijf@yahooinc.com>2022-11-03 13:09:25 +0100
commit638e5c91f83ac2d371f1a3ec4e0ad24c7ae06371 (patch)
tree36e854cd5b8fb45008a77bdc97c05b20dc4e61fb /node-repository
parent8ba46705190d62bcf9d398407331b1eab807ebd4 (diff)
Re-reserve nodes in activate()
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Activator.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Activator.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Activator.java
index 555ec741b52..7947fe9f021 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Activator.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Activator.java
@@ -73,6 +73,8 @@ class Activator {
NodeList reserved = updatePortsFrom(hosts, applicationNodes.state(Node.State.reserved)
.matching(node -> hostnames.contains(node.hostname())));
+ nodeRepository.nodes().reserve(reserved.asList()); // Re-reserve nodes to avoid reservation expiry
+
NodeList oldActive = applicationNodes.state(Node.State.active); // All nodes active now
NodeList continuedActive = oldActive.matching(node -> hostnames.contains(node.hostname()));
NodeList newActive = withHostInfo(continuedActive, hosts, activationTime).and(reserved); // All nodes that will be active when this is committed