diff options
author | Valerij Fredriksen <valerijf@yahooinc.com> | 2022-02-02 23:52:25 +0100 |
---|---|---|
committer | Valerij Fredriksen <valerijf@yahooinc.com> | 2022-02-03 22:47:57 +0100 |
commit | aa6c641255ee3a9742dc50f5076d321145533267 (patch) | |
tree | e9db873a428611605502e45ed88c934d55e506ba /node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java | |
parent | ee735cda60f8f9d1b53cface5b7e6a008ee126ab (diff) |
Add Orchestrator to NodeRepository
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java index 71e6fb8521e..e914c3b16e6 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java @@ -16,7 +16,6 @@ import com.yahoo.vespa.hosted.provision.node.Agent; import com.yahoo.vespa.hosted.provision.node.History; import com.yahoo.vespa.orchestrator.ApplicationIdNotFoundException; import com.yahoo.vespa.orchestrator.HostNameNotFoundException; -import com.yahoo.vespa.orchestrator.Orchestrator; import com.yahoo.vespa.orchestrator.status.ApplicationInstanceStatus; import com.yahoo.yolean.Exceptions; @@ -54,19 +53,16 @@ public class NodeFailer extends NodeRepositoryMaintainer { private final Deployer deployer; private final Duration downTimeLimit; private final Duration suspendedDownTimeLimit; - private final Orchestrator orchestrator; private final ThrottlePolicy throttlePolicy; private final Metric metric; public NodeFailer(Deployer deployer, NodeRepository nodeRepository, - Duration downTimeLimit, Duration interval, Orchestrator orchestrator, - ThrottlePolicy throttlePolicy, Metric metric) { + Duration downTimeLimit, Duration interval, ThrottlePolicy throttlePolicy, Metric metric) { // check ping status every interval, but at least twice as often as the down time limit super(nodeRepository, min(downTimeLimit.dividedBy(2), interval), metric); this.deployer = deployer; this.downTimeLimit = downTimeLimit; this.suspendedDownTimeLimit = downTimeLimit.multipliedBy(4); // Allow more downtime when a node is suspended - this.orchestrator = orchestrator; this.throttlePolicy = throttlePolicy; this.metric = metric; } @@ -201,7 +197,7 @@ public class NodeFailer extends NodeRepositoryMaintainer { private boolean applicationSuspended(Node node) { try { - return orchestrator.getApplicationInstanceStatus(node.allocation().get().owner()) + return nodeRepository().orchestrator().getApplicationInstanceStatus(node.allocation().get().owner()) == ApplicationInstanceStatus.ALLOWED_TO_BE_DOWN; } catch (ApplicationIdNotFoundException e) { // Treat it as not suspended and allow to fail the node anyway @@ -211,7 +207,7 @@ public class NodeFailer extends NodeRepositoryMaintainer { private boolean suspended(Node node) { try { - return orchestrator.getNodeStatus(new HostName(node.hostname())).isSuspended(); + return nodeRepository().orchestrator().getNodeStatus(new HostName(node.hostname())).isSuspended(); } catch (HostNameNotFoundException e) { // Treat it as not suspended return false; |