diff options
author | Martin Polden <mpolden@mpolden.no> | 2021-03-18 17:08:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-18 17:08:06 +0100 |
commit | d4a82f387a4ed5104b0c6201aae0dbc4492c24f1 (patch) | |
tree | d4cc4a2d3f9292de3b4ad889b62d70e77488ed8c | |
parent | 1fa5a662531f634275edce5266d3b635785f9780 (diff) | |
parent | 641b6e3270f68e90cc346a4d90b65822e460a812 (diff) |
Merge pull request #17044 from vespa-engine/mpolden/only-expire-host
Only expire tenant hosts from provisioned
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ProvisionedExpirer.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ProvisionedExpirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ProvisionedExpirer.java index c5a2bc97ef2..7a29414642e 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ProvisionedExpirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ProvisionedExpirer.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.hosted.provision.maintenance; +import com.yahoo.config.provision.NodeType; import com.yahoo.jdisc.Metric; import com.yahoo.vespa.hosted.provision.Node; import com.yahoo.vespa.hosted.provision.NodeRepository; @@ -11,7 +12,11 @@ import java.time.Duration; import java.util.List; /** - * This moves nodes from provisioned to parked if they have been in provisioned too long. + * This moves nodes of type {@link NodeType#host} from preovisioned to parked if they have been in provisioned too long. + * + * Only {@link NodeType#host} is moved because any number of nodes of that type can exist. Other node types such as + * {@link NodeType#confighost} have a fixed number and thus cannot be replaced while the fixed number of nodes exist in + * any state. * * @author freva */ @@ -23,8 +28,11 @@ public class ProvisionedExpirer extends Expirer { @Override protected void expire(List<Node> expired) { - for (Node expiredNode : expired) - nodeRepository().nodes().parkRecursively(expiredNode.hostname(), Agent.ProvisionedExpirer, "Node is stuck in provisioned"); + for (Node expiredNode : expired) { + if (expiredNode.type() == NodeType.host) { + nodeRepository().nodes().parkRecursively(expiredNode.hostname(), Agent.ProvisionedExpirer, "Node is stuck in provisioned"); + } + } } } |