Updated Branches:
  refs/heads/trunk 33bf2302c -> a6f6d20ad

AMBARI-3914 Add Host wizard stuck on configuration step. (atkach)


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

Branch: refs/heads/trunk
Commit: a6f6d20adbecf7d54a9023a6ac8cdec14221ae67
Parents: 33bf230
Author: atkach <[email protected]>
Authored: Thu Nov 28 15:24:42 2013 +0200
Committer: atkach <[email protected]>
Committed: Thu Nov 28 15:24:42 2013 +0200

----------------------------------------------------------------------
 .../app/controllers/main/host/add_controller.js | 55 ++++++++++----------
 ambari-web/app/mappers/server_data_mapper.js    | 41 ++++++++++++++-
 ambari-web/app/mappers/status_mapper.js         | 41 +--------------
 3 files changed, 69 insertions(+), 68 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/a6f6d20a/ambari-web/app/controllers/main/host/add_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/host/add_controller.js 
b/ambari-web/app/controllers/main/host/add_controller.js
index dc66cca..84b2ea4 100644
--- a/ambari-web/app/controllers/main/host/add_controller.js
+++ b/ambari-web/app/controllers/main/host/add_controller.js
@@ -358,48 +358,49 @@ App.AddHostController = App.WizardController.extend({
   loadServiceConfigGroups: function () {
     var slaveComponentHosts = this.get('content.slaveComponentHosts');
     var selectedServices = [];
-    var selectedClientHosts = 
slaveComponentHosts.findProperty('componentName','CLIENT').hosts.mapProperty('hostName');
-
-    slaveComponentHosts.forEach(function (slave){
-      if(slave.hosts.length > 0){
-        if(slave.componentName != "CLIENT"){
-          var service = App.HostComponent.find().findProperty('componentName', 
slave.componentName).get('service');
-          var configGroups = 
this.get('content.configGroups').filterProperty('ConfigGroup.tag', 
service.get('id'));
-          var configGroupsNames = 
configGroups.mapProperty('ConfigGroup.group_name')
+    var selectedClientHosts = 
slaveComponentHosts.findProperty('componentName', 
'CLIENT').hosts.mapProperty('hostName');
+    var componentServiceMap = App.QuickDataMapper.componentServiceMap;
+
+    slaveComponentHosts.forEach(function (slave) {
+      if (slave.hosts.length > 0) {
+        if (slave.componentName != "CLIENT") {
+          var service = componentServiceMap[slave.componentName];
+          var configGroups = 
this.get('content.configGroups').filterProperty('ConfigGroup.tag', service);
+          var configGroupsNames = 
configGroups.mapProperty('ConfigGroup.group_name');
           configGroupsNames.push('Default');
           selectedServices.push({
-            serviceId : service.get('id'),
-            displayName : service.get('displayName'),
-            hosts : slave.hosts.mapProperty('hostName'),
-            configGroupsNames : configGroupsNames,
-            configGroups : configGroups,
+            serviceId: service,
+            displayName: App.Service.DisplayNames[service],
+            hosts: slave.hosts.mapProperty('hostName'),
+            configGroupsNames: configGroupsNames,
+            configGroups: configGroups,
             selectedConfigGroup: "Default"
           });
         }
       }
-    },this);
-    if(selectedClientHosts.length > 0){
+    }, this);
+    if (selectedClientHosts.length > 0) {
       this.loadClients();
       var clients = this.get('content.clients');
       clients.forEach(function (client) {
-        var service = App.HostComponent.find().findProperty('componentName', 
client.component_name).get('service');
-        var serviceMatch = 
selectedServices.findProperty('serviceId',service.get('id'));
-        if(serviceMatch){
+        var service = componentServiceMap[client.component_name];
+        var serviceMatch = selectedServices.findProperty('serviceId', service);
+        if (serviceMatch) {
           serviceMatch.hosts = 
serviceMatch.hosts.concat(selectedClientHosts).uniq();
-        }else{
-          var configGroups = 
this.get('content.configGroups').filterProperty('ConfigGroup.tag', 
service.get('id'));
-          var configGroupsNames = 
configGroups.mapProperty('ConfigGroup.group_name')
+        } else {
+          var configGroups = 
this.get('content.configGroups').filterProperty('ConfigGroup.tag', service);
+          var configGroupsNames = 
configGroups.mapProperty('ConfigGroup.group_name');
           configGroupsNames.push('Default');
           selectedServices.push({
-            serviceId : service.get('id'),
-            displayName : service.get('displayName'),
-            hosts : selectedClientHosts,
-            configGroupsNames : configGroupsNames,
-            configGroups : configGroups,
+            serviceId: service,
+            displayName: App.Service.DisplayNames[service],
+            hosts: selectedClientHosts,
+            configGroupsNames: configGroupsNames,
+            configGroups: configGroups,
             selectedConfigGroup: "Default"
           });
         }
-      },this);
+      }, this);
     }
     this.set('content.serviceConfigGroups', selectedServices);
   },

http://git-wip-us.apache.org/repos/asf/ambari/blob/a6f6d20a/ambari-web/app/mappers/server_data_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/server_data_mapper.js 
b/ambari-web/app/mappers/server_data_mapper.js
index c28d2ad..8294869 100644
--- a/ambari-web/app/mappers/server_data_mapper.js
+++ b/ambari-web/app/mappers/server_data_mapper.js
@@ -134,4 +134,43 @@ App.QuickDataMapper = App.ServerDataMapper.extend({
 //    }
     return json;
   }
-});
+})
+
+App.QuickDataMapper.componentServiceMap = {
+  'NAMENODE': 'HDFS',
+  'SECONDARY_NAMENODE': 'HDFS',
+  'DATANODE': 'HDFS',
+  'HDFS_CLIENT': 'HDFS',
+  'JOBTRACKER': 'MAPREDUCE',
+  'TASKTRACKER': 'MAPREDUCE',
+  'MAPREDUCE_CLIENT': 'MAPREDUCE',
+  'MAPREDUCE2_CLIENT': 'MAPREDUCE2',
+  'HISTORYSERVER': 'MAPREDUCE2',
+  'TEZ_CLIENT': 'TEZ',
+  'RESOURCEMANAGER': 'YARN',
+  'YARN_CLIENT': 'YARN',
+  'NODEMANAGER': 'YARN',
+  'ZOOKEEPER_SERVER': 'ZOOKEEPER',
+  'ZOOKEEPER_CLIENT': 'ZOOKEEPER',
+  'HBASE_MASTER': 'HBASE',
+  'HBASE_REGIONSERVER': 'HBASE',
+  'HBASE_CLIENT': 'HBASE',
+  'PIG': 'PIG',
+  'SQOOP': 'SQOOP',
+  'OOZIE_SERVER': 'OOZIE',
+  'OOZIE_CLIENT': 'OOZIE',
+  'HIVE_SERVER': 'HIVE',
+  'HIVE_METASTORE': 'HIVE',
+  'HIVE_CLIENT': 'HIVE',
+  'MYSQL_SERVER': 'HIVE',
+  'HCAT': 'HCATALOG',
+  'WEBHCAT_SERVER': 'WEBHCAT',
+  'NAGIOS_SERVER': 'NAGIOS',
+  'GANGLIA_SERVER': 'GANGLIA',
+  'GANGLIA_MONITOR': 'GANGLIA',
+  'KERBEROS_SERVER': 'KERBEROS',
+  'KERBEROS_ADMIN_CLIENT': 'KERBEROS',
+  'KERBEROS_CLIENT': 'KERBEROS',
+  'HUE_SERVER': 'HUE',
+  'HCFS_CLIENT': 'HCFS'
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/a6f6d20a/ambari-web/app/mappers/status_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/status_mapper.js 
b/ambari-web/app/mappers/status_mapper.js
index efda4dd..cc33fd1 100644
--- a/ambari-web/app/mappers/status_mapper.js
+++ b/ambari-web/app/mappers/status_mapper.js
@@ -19,45 +19,6 @@ var App = require('app');
 
 App.statusMapper = App.QuickDataMapper.create({
   model: App.HostComponent,
-  componentServiceMap: {
-    'NAMENODE': 'HDFS',
-    'SECONDARY_NAMENODE': 'HDFS',
-    'DATANODE': 'HDFS',
-    'HDFS_CLIENT': 'HDFS',
-    'JOBTRACKER': 'MAPREDUCE',
-    'TASKTRACKER': 'MAPREDUCE',
-    'MAPREDUCE_CLIENT': 'MAPREDUCE',
-    'MAPREDUCE2_CLIENT': 'MAPREDUCE2',
-    'HISTORYSERVER': 'MAPREDUCE2',
-    'TEZ_CLIENT': 'TEZ',
-    'RESOURCEMANAGER': 'YARN',
-    'YARN_CLIENT': 'YARN',
-    'NODEMANAGER': 'YARN',
-    'ZOOKEEPER_SERVER': 'ZOOKEEPER',
-    'ZOOKEEPER_CLIENT': 'ZOOKEEPER',
-    'HBASE_MASTER': 'HBASE',
-    'HBASE_REGIONSERVER': 'HBASE',
-    'HBASE_CLIENT': 'HBASE',
-    'PIG': 'PIG',
-    'SQOOP': 'SQOOP',
-    'OOZIE_SERVER': 'OOZIE',
-    'OOZIE_CLIENT': 'OOZIE',
-    'HIVE_SERVER': 'HIVE',
-    'HIVE_METASTORE': 'HIVE',
-    'HIVE_CLIENT': 'HIVE',
-    'MYSQL_SERVER': 'HIVE',
-    'HCAT': 'HCATALOG',
-    'WEBHCAT_SERVER': 'WEBHCAT',
-    'NAGIOS_SERVER': 'NAGIOS',
-    'GANGLIA_SERVER': 'GANGLIA',
-    'GANGLIA_MONITOR': 'GANGLIA',
-    'KERBEROS_SERVER': 'KERBEROS',
-    'KERBEROS_ADMIN_CLIENT': 'KERBEROS',
-    'KERBEROS_CLIENT': 'KERBEROS',
-    'HUE_SERVER': 'HUE',
-    'HCFS_CLIENT': 'HCFS'
-  },
-
   map: function (json) {
     console.time('App.statusMapper execution time');
     if (json.items) {
@@ -65,7 +26,7 @@ App.statusMapper = App.QuickDataMapper.create({
       var hostStatuses = {};
       var hostComponentStatuses = {};
       var addedHostComponents = [];
-      var componentServiceMap = this.get('componentServiceMap');
+      var componentServiceMap = App.QuickDataMapper.componentServiceMap;
       var currentComponentStatuses = {};
       var currentHostStatuses = {};
       var previousHostStatuses = App.cache['previousHostStatuses'];

Reply via email to