AMBARI-18851 : Collector host refresh in Ambari Server is not working in single 
Metrics collector deployments. (avijayan)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/b33c4fcf
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/b33c4fcf
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/b33c4fcf

Branch: refs/heads/branch-2.5
Commit: b33c4fcf45c8438bdd054f298c5ebc0bc59c6afb
Parents: 0b2b59d
Author: Aravindan Vijayan <[email protected]>
Authored: Mon Nov 14 22:03:58 2016 -0800
Committer: Aravindan Vijayan <[email protected]>
Committed: Tue Nov 15 11:06:41 2016 -0800

----------------------------------------------------------------------
 .../metrics/MetricsCollectorHAClusterState.java           | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/b33c4fcf/ambari-server/src/main/java/org/apache/ambari/server/controller/metrics/MetricsCollectorHAClusterState.java
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/metrics/MetricsCollectorHAClusterState.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/metrics/MetricsCollectorHAClusterState.java
index 05b4e05..2e6b091 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/metrics/MetricsCollectorHAClusterState.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/metrics/MetricsCollectorHAClusterState.java
@@ -168,6 +168,16 @@ public class MetricsCollectorHAClusterState {
         return true;
       }
     }
+
+    //If no host is alive, check if some dead collectors have become live.
+    testAndAddDeadCollectorsToLiveList();
+
+    //try one more time
+    for (String host : liveCollectorHosts) {
+      if (HostStatusHelper.isHostLive(managementController, clusterName, 
host)) {
+        return true;
+      }
+    }
     return false;
     }
 

Reply via email to