summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@oath.com>2018-09-19 11:48:11 +0200
committerHåkon Hallingstad <hakon@oath.com>2018-09-19 11:48:11 +0200
commit6eb24e035a6a726bf31ac32dc467f24cd91e22c8 (patch)
tree6415f4a6c4ccb32ac571b6528c6740b61a165562 /node-repository
parentd3a235dedd51bd53a2a944c3ede0e6adcd8766e3 (diff)
Log reason for removal of node
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java
index 86d4caef94b..6036399d83e 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java
@@ -92,17 +92,25 @@ public class RetiredExpirer extends Maintainer {
*/
private boolean canRemove(Node node) {
if (node.type().isDockerHost()) {
- return nodeRepository()
- .getChildNodes(node.hostname()).stream()
- .allMatch(child -> child.state() == Node.State.parked || child.state() == Node.State.failed);
+ if (nodeRepository()
+ .getChildNodes(node.hostname()).stream()
+ .allMatch(child -> child.state() == Node.State.parked ||
+ child.state() == Node.State.failed)) {
+ log.info("Docker host " + node + " has no non-parked/failed children");
+ return true;
+ }
+
+ return false;
}
if (node.history().hasEventBefore(History.Event.Type.retired, clock.instant().minus(retiredExpiry))) {
+ log.info("Node " + node + " has been retired longer than " + retiredExpiry);
return true;
}
try {
orchestrator.acquirePermissionToRemove(new HostName(node.hostname()));
+ log.info("Node " + node + " has been granted permission to be removed");
return true;
} catch (OrchestrationException e) {
log.info("Did not get permission to remove retired " + node + ": " + e.getMessage());