Explorar el Código

AMBARI-3488 Status does not show up for newly added hosts. (atkach)

atkach hace 11 años
padre
commit
78e3d4142d
Se han modificado 1 ficheros con 17 adiciones y 14 borrados
  1. 17 14
      ambari-web/app/mappers/status_mapper.js

+ 17 - 14
ambari-web/app/mappers/status_mapper.js

@@ -294,20 +294,23 @@ App.statusMapper = App.QuickDataMapper.create({
     hosts.forEach(function(_host){
       var healthStatus = _host.get('healthStatus');
       var host = hostsMap[_host.get('id')];
-      var status;
-      var masterComponentsRunning = (host.mastersRunning === host.totalMasters);
-      var slaveComponentsRunning = (host.slavesRunning === host.totalSlaves);
-      if (_host.get('isNotHeartBeating') || healthStatus == 'UNKNOWN') {
-        status = 'DEAD-YELLOW';
-      } else if (masterComponentsRunning && slaveComponentsRunning) {
-        status = 'LIVE';
-      } else if (host.totalMasters > 0 && !masterComponentsRunning) {
-        status = 'DEAD-RED';
-      } else {
-        status = 'DEAD-ORANGE';
-      }
-      if (status) {
-        healthStatus = status;
+      if(host) {
+        //hostComponents of host are loaded to model
+        var status;
+        var masterComponentsRunning = (host.mastersRunning === host.totalMasters);
+        var slaveComponentsRunning = (host.slavesRunning === host.totalSlaves);
+        if (_host.get('isNotHeartBeating') || healthStatus == 'UNKNOWN') {
+          status = 'DEAD-YELLOW';
+        } else if (masterComponentsRunning && slaveComponentsRunning) {
+          status = 'LIVE';
+        } else if (host.totalMasters > 0 && !masterComponentsRunning) {
+          status = 'DEAD-RED';
+        } else {
+          status = 'DEAD-ORANGE';
+        }
+        if (status) {
+          healthStatus = status;
+        }
       }
       _host.set('healthClass', 'health-status-' + healthStatus);
     }, this);