Updated Branches:
  refs/heads/trunk 7a26b7ef8 -> 16088a760

AMBARI-3192. FE change due to BE has removed ServiceComponentInfo to each 
NameNode. (xiwang via yusaku)


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

Branch: refs/heads/trunk
Commit: 16088a760e1569d91037481e947f52fdf689f68d
Parents: 7a26b7e
Author: Yusaku Sako <[email protected]>
Authored: Thu Sep 12 12:54:26 2013 -0700
Committer: Yusaku Sako <[email protected]>
Committed: Thu Sep 12 12:54:26 2013 -0700

----------------------------------------------------------------------
 .../app/controllers/global/update_controller.js | 28 ++++++++++++---
 ambari-web/app/mappers/service_mapper.js        | 37 ++++++++++----------
 2 files changed, 42 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/16088a76/ambari-web/app/controllers/global/update_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/global/update_controller.js 
b/ambari-web/app/controllers/global/update_controller.js
index 25fb267..c378804 100644
--- a/ambari-web/app/controllers/global/update_controller.js
+++ b/ambari-web/app/controllers/global/update_controller.js
@@ -99,10 +99,30 @@ App.UpdateController = Em.Controller.extend({
     var conditionalFieldsString = conditionalFields.length > 0 ? ',' + 
conditionalFields.join(',') : '';
     var methodStartTs = new Date().getTime();
     var testUrl = App.get('isHadoop2Stack') ? 
'/data/dashboard/HDP2/services.json':'/data/dashboard/services.json';
-    var servicesUrl = isInitialLoad ? 
-      //this.getUrl('/data/dashboard/services.json', 
'/services?fields=components/ServiceComponentInfo,components/host_components,components/host_components/HostRoles')
 :
-      this.getUrl(testUrl, 
'/services?fields=components/ServiceComponentInfo,components/host_components,components/host_components/HostRoles,components/host_components/metrics/jvm/memHeapUsedM,components/host_components/metrics/jvm/memHeapCommittedM,components/host_components/metrics/mapred/jobtracker/trackers_decommissioned,components/host_components/metrics/cpu/cpu_wio,components/host_components/metrics/rpc/RpcQueueTime_avg_time,components/host_components/metrics/dfs/FSNamesystem/HAState'+conditionalFieldsString)
 :
-      this.getUrl(testUrl, 
'/services?fields=components/ServiceComponentInfo,components/host_components,components/host_components/HostRoles,components/host_components/metrics/jvm/memHeapUsedM,components/host_components/metrics/jvm/memHeapCommittedM,components/host_components/metrics/mapred/jobtracker/trackers_decommissioned,components/host_components/metrics/cpu/cpu_wio,components/host_components/metrics/rpc/RpcQueueTime_avg_time,components/host_components/metrics/dfs/FSNamesystem/HAState'+conditionalFieldsString);
+
+    var realUrl = 
'/services?fields=components/ServiceComponentInfo,components/host_components,components/host_components/HostRoles,'
 +
+      'components/host_components/metrics/jvm/memHeapUsedM,' +
+      'components/host_components/metrics/jvm/memHeapCommittedM,' +
+      
'components/host_components/metrics/mapred/jobtracker/trackers_decommissioned,' 
+
+      'components/host_components/metrics/cpu/cpu_wio,' +
+      'components/host_components/metrics/rpc/RpcQueueTime_avg_time,' +
+      'components/host_components/metrics/dfs/FSNamesystem/HAState,' +
+      'components/host_components/metrics/dfs/FSNamesystem/CapacityUsed,' +
+      'components/host_components/metrics/dfs/FSNamesystem/CapacityTotal,' +
+      'components/host_components/metrics/dfs/FSNamesystem/CapacityRemaining,' 
+
+      'components/host_components/metrics/dfs/FSNamesystem/BlocksTotal,' +
+      'components/host_components/metrics/dfs/FSNamesystem/CorruptBlocks,' +
+      'components/host_components/metrics/dfs/FSNamesystem/MissingBlocks,' +
+      
'components/host_components/metrics/dfs/FSNamesystem/UnderReplicatedBlocks,' +
+      'components/host_components/metrics/dfs/namenode/Version,' +
+      'components/host_components/metrics/dfs/namenode/LiveNodes,' +
+      'components/host_components/metrics/dfs/namenode/DeadNodes,' +
+      'components/host_components/metrics/dfs/namenode/DecomNodes,' +
+      'components/host_components/metrics/dfs/namenode/TotalFiles,' +
+      'components/host_components/metrics/dfs/namenode/UpgradeFinalized,' +
+      'components/host_components/metrics/dfs/namenode/Safemode';
+
+    var servicesUrl = isInitialLoad ? this.getUrl(testUrl, realUrl + 
conditionalFieldsString) : this.getUrl(testUrl, realUrl + 
conditionalFieldsString);
     var callback = callback || function (jqXHR, textStatus) {
       self.set('isUpdated', true);
     };

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/16088a76/ambari-web/app/mappers/service_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/service_mapper.js 
b/ambari-web/app/mappers/service_mapper.js
index 5733995..2cb1c93 100644
--- a/ambari-web/app/mappers/service_mapper.js
+++ b/ambari-web/app/mappers/service_mapper.js
@@ -58,7 +58,7 @@ App.servicesMapper = App.QuickDataMapper.create({
     host_components: 'host_components'
   },
   hdfsConfig: {
-    version: 'nameNodeComponent.ServiceComponentInfo.Version',
+    version: 
'nameNodeComponent.host_components[0].metrics.dfs.namenode.Version',
     name_node_id: 'nameNodeComponent.host_components[0].HostRoles.host_name',
     sname_node_id: 'snameNodeComponent.host_components[0].HostRoles.host_name',
     active_name_node_id: 'active_name_node_id',
@@ -66,22 +66,22 @@ App.servicesMapper = App.QuickDataMapper.create({
     standby_name_node2_id: 'standby_name_node2_id',
     data_nodes: 'data_nodes',
     journal_nodes: 'journal_nodes',
-    name_node_start_time: 'nameNodeComponent.ServiceComponentInfo.StartTime',
+    name_node_start_time: 'nameNodeComponent.ServiceComponentInfo.StartTime', 
//// blocked by bug-8787
     jvm_memory_heap_used: 
'nameNodeComponent.host_components[0].metrics.jvm.memHeapUsedM',
     jvm_memory_heap_committed: 
'nameNodeComponent.host_components[0].metrics.jvm.memHeapCommittedM',
     live_data_nodes: 'live_data_nodes',
     dead_data_nodes: 'dead_data_nodes',
     decommission_data_nodes: 'decommission_data_nodes',
-    capacity_used: 'nameNodeComponent.ServiceComponentInfo.CapacityUsed',
-    capacity_total: 'nameNodeComponent.ServiceComponentInfo.CapacityTotal',
-    capacity_remaining: 
'nameNodeComponent.ServiceComponentInfo.CapacityRemaining',
-    dfs_total_blocks: 'nameNodeComponent.ServiceComponentInfo.BlocksTotal',
-    dfs_corrupt_blocks: 'nameNodeComponent.ServiceComponentInfo.CorruptBlocks',
-    dfs_missing_blocks: 'nameNodeComponent.ServiceComponentInfo.MissingBlocks',
-    dfs_under_replicated_blocks: 
'nameNodeComponent.ServiceComponentInfo.UnderReplicatedBlocks',
-    dfs_total_files: 'nameNodeComponent.ServiceComponentInfo.TotalFiles',
-    upgrade_status: 'nameNodeComponent.ServiceComponentInfo.UpgradeFinalized',
-    safe_mode_status: 'nameNodeComponent.ServiceComponentInfo.Safemode',
+    capacity_used: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.CapacityUsed',
+    capacity_total: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.CapacityTotal',
+    capacity_remaining: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.CapacityRemaining',
+    dfs_total_blocks: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.BlocksTotal',
+    dfs_corrupt_blocks: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.CorruptBlocks',
+    dfs_missing_blocks: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.MissingBlocks',
+    dfs_under_replicated_blocks: 
'nameNodeComponent.host_components[0].metrics.dfs.FSNamesystem.UnderReplicatedBlocks',
+    dfs_total_files: 
'nameNodeComponent.host_components[0].metrics.dfs.namenode.TotalFiles',
+    upgrade_status: 
'nameNodeComponent.host_components[0].metrics.dfs.namenode.UpgradeFinalized',
+    safe_mode_status: 
'nameNodeComponent.host_components[0].metrics.dfs.namenode.Safemode',
     name_node_cpu: 'nameNodeComponent.host_components[0].metrics.cpu.cpu_wio',
     name_node_rpc: 
'nameNodeComponent.host_components[0].metrics.rpc.RpcQueueTime_avg_time'
   },
@@ -336,8 +336,8 @@ App.servicesMapper = App.QuickDataMapper.create({
     var hdfsConfig = this.hdfsConfig;
     item.components.forEach(function (component) {
       if (component.ServiceComponentInfo && 
component.ServiceComponentInfo.component_name == "NAMENODE") {
-
-        if ( component.host_components.length == 2) { //enabled HA
+        //enabled HA
+        if ( component.host_components.length == 2) {
           var haState1;
           var haState2;
           if (component.host_components[1].metrics && 
component.host_components[1].metrics.dfs) {
@@ -381,8 +381,7 @@ App.servicesMapper = App.QuickDataMapper.create({
               item.standby_name_node2_id = standby_name_nodes[1];
               break;
           }
-
-          // make sure: active nameNode always at host_components[0].
+          // important: active nameNode always at host_components[0]; if no 
active, then any nameNode could work.
           if (haState2 == "active") { // change places for all model bind with 
host_component[0]
             var tmp = component.host_components[1];
             component.host_components[1] = component.host_components[0];
@@ -392,9 +391,9 @@ App.servicesMapper = App.QuickDataMapper.create({
         item.nameNodeComponent = component;
         finalConfig = jQuery.extend(finalConfig, hdfsConfig);
         // Get the live, dead & decommission nodes from string json
-        var liveNodesJson = 
App.parseJSON(component.ServiceComponentInfo.LiveNodes);
-        var deadNodesJson = 
App.parseJSON(component.ServiceComponentInfo.DeadNodes);
-        var decommissionNodesJson = 
App.parseJSON(component.ServiceComponentInfo.DecomNodes);
+        var liveNodesJson = 
App.parseJSON(component.host_components[0].metrics.dfs.namenode.LiveNodes);
+        var deadNodesJson = 
App.parseJSON(component.host_components[0].metrics.dfs.namenode.DeadNodes);
+        var decommissionNodesJson = 
App.parseJSON(component.host_components[0].metrics.dfs.namenode.DecomNodes);
         item.live_data_nodes = [];
         item.dead_data_nodes = [];
         item.decommission_data_nodes = [];

Reply via email to