diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2017-04-25 11:02:11 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2017-04-25 11:02:11 +0200 |
commit | 2fd88a0cbbe929e285436515700057fc12538687 (patch) | |
tree | a5b0244089511fbde1b94eb25122b86358b7d668 /node-repository | |
parent | 1c034dc75177bbfa18d7099d9dcea3554c94e5b9 (diff) |
Notify about started jobs
Diffstat (limited to 'node-repository')
9 files changed, 11 insertions, 28 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java index d0fda57da1f..a30268f46a0 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java @@ -55,9 +55,6 @@ public abstract class Expirer extends Maintainer { expire(expired); } - @Override - public String toString() { return "Expiry from " + fromState; } - /** Implement this callback to take action to expire these nodes */ protected abstract void expire(List<Node> node); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/JobControl.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/JobControl.java index 53c1651b8cf..471e76fb655 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/JobControl.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/JobControl.java @@ -15,6 +15,11 @@ public class JobControl { private Set<String> startedJobs = new ConcurrentSkipListSet<>(); private Set<String> deactivatedJobs = new ConcurrentSkipListSet<>(); + + /** Notifies this that a job was started */ + public void started(String jobSimpleClassName) { + startedJobs.add(jobSimpleClassName); + } /** * Returns a snapshot of the set of jobs started on this system (whether deactivated or not). diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Maintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Maintainer.java index 54ab172b372..fbcc897ca81 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Maintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Maintainer.java @@ -33,6 +33,7 @@ public abstract class Maintainer extends AbstractComponent implements Runnable { this.service = new ScheduledThreadPoolExecutor(1); this.service.scheduleAtFixedRate(this, interval.toMillis(), interval.toMillis(), TimeUnit.MILLISECONDS); + jobControl.started(name()); } /** Returns the node repository */ @@ -48,7 +49,7 @@ public abstract class Maintainer extends AbstractComponent implements Runnable { @Override public void run() { try { - if (jobControl.isActive(this.getClass().getSimpleName())) + if (jobControl.isActive(name())) maintain(); } catch (RuntimeException e) { @@ -61,11 +62,13 @@ public abstract class Maintainer extends AbstractComponent implements Runnable { this.service.shutdown(); } - /** Returns a textual description of this job */ + /** Returns the simple name of this job */ @Override - public abstract String toString(); + public final String toString() { return name(); } /** Called once each time this maintenance job should run */ protected abstract void maintain(); + + private String name() { return this.getClass().getSimpleName(); } } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java index 675385d27ee..c2991ab2b8b 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java @@ -33,7 +33,4 @@ public class MetricsReporter extends Maintainer { nodeRepository().getNodes(NodeType.tenant, state).size(), null); } - @Override - public String toString() { return "Metrics reporter"; } - } 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 a095140558e..de8667e0325 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 @@ -281,9 +281,6 @@ public class NodeFailer extends Maintainer { return throttle; } - @Override - public String toString() { return "Node failer"; } - public enum ThrottlePolicy { hosted(Duration.ofDays(1), 0.01, 2), diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRebooter.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRebooter.java index e112e062ede..87a55e194a2 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRebooter.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRebooter.java @@ -52,9 +52,4 @@ public class NodeRebooter extends Maintainer { return random.nextDouble() < (double) interval().getSeconds() / (double)rebootInterval.getSeconds(); } - @Override - public String toString() { - return "Node rebooter"; - } - } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/OperatorChangeApplicationMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/OperatorChangeApplicationMaintainer.java index ccd2240ff52..8d09aff479e 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/OperatorChangeApplicationMaintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/OperatorChangeApplicationMaintainer.java @@ -75,7 +75,4 @@ public class OperatorChangeApplicationMaintainer extends ApplicationMaintainer { " as a manual change was made to its nodes"); } - @Override - public String toString() { return "Operator change application redeployer"; } - } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/PeriodicApplicationMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/PeriodicApplicationMaintainer.java index 09c8d897463..6c7f9070984 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/PeriodicApplicationMaintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/PeriodicApplicationMaintainer.java @@ -43,7 +43,4 @@ public class PeriodicApplicationMaintainer extends ApplicationMaintainer { return nodeRepository().getNodes(Node.State.active); } - @Override - public String toString() { return "Periodic application redeployer"; } - } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ZooKeeperAccessMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ZooKeeperAccessMaintainer.java index 2b87b463fd4..1469cf7a201 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ZooKeeperAccessMaintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ZooKeeperAccessMaintainer.java @@ -45,9 +45,4 @@ public class ZooKeeperAccessMaintainer extends Maintainer { ZooKeeperServer.setAllowedClientHostnames(hosts); } - @Override - public String toString() { - return "ZooKeeper access maintainer"; - } - } |