瀏覽代碼

AMBARI-5124. Configure Components step of HA wizard got stuck forever (requires page refresh to continue). (Buzhor Denys via onechiporenko)

Oleg Nechiporenko 11 年之前
父節點
當前提交
fcd6a94be6

+ 11 - 11
ambari-web/app/controllers/main/admin/highAvailability/progress_controller.js

@@ -253,17 +253,17 @@ App.HighAvailabilityProgressPageController = App.HighAvailabilityWizardControlle
     for (var i = 0; i < hostName.length; i++) {
       hostComponents = App.HostComponent.find().filterProperty('componentName', componentName);
       if (!hostComponents.length || !hostComponents.mapProperty('host.hostName').contains(hostName[i])) {
-      App.ajax.send({
-        name: 'admin.high_availability.create_component',
-        sender: this,
-        data: {
-          hostName: hostName[i],
-          componentName: componentName,
-          taskNum: hostName.length
-        },
-        success: 'onCreateComponent',
-        error: 'onCreateComponentError'
-      });
+        App.ajax.send({
+          name: 'admin.high_availability.create_component',
+          sender: this,
+          data: {
+            hostName: hostName[i],
+            componentName: componentName,
+            taskNum: hostName.length
+          },
+          success: 'onCreateComponent',
+          error: 'onCreateComponentError'
+        });
       } else {
         // Simulates format returned from ajax.send
         this.onCreateComponent(null, null, {hostName: hostName[i], componentName: componentName, taskNum: hostName.length});

+ 12 - 18
ambari-web/app/controllers/main/admin/highAvailability/step5_controller.js

@@ -80,7 +80,7 @@ App.HighAvailabilityWizardStep5Controller = App.HighAvailabilityProgressPageCont
     var data = this.get('content.serviceConfigProperties');
     var hdfsSiteProperties = data.items.findProperty('type', 'hdfs-site').properties;
     var coreSiteProperties = data.items.findProperty('type', 'core-site').properties;
-    this.set('configsSaved', false);
+    var self = this;
     App.ajax.send({
       name: 'admin.high_availability.save_configs',
       sender: this,
@@ -88,28 +88,22 @@ App.HighAvailabilityWizardStep5Controller = App.HighAvailabilityProgressPageCont
         siteName: 'hdfs-site',
         properties: hdfsSiteProperties
       },
-      success: 'installHDFSClients',
-      error: 'onTaskError'
-    });
-    App.ajax.send({
-      name: 'admin.high_availability.save_configs',
-      sender: this,
-      data: {
-        siteName: 'core-site',
-        properties: coreSiteProperties
-      },
-      success: 'installHDFSClients',
       error: 'onTaskError'
+    }).done(function() {
+      App.ajax.send({
+        name: 'admin.high_availability.save_configs',
+        sender: self,
+        data: {
+          siteName: 'core-site',
+          properties: coreSiteProperties
+        },
+        error: 'onTaskError',
+        success: 'installHDFSClients'
+      });
     });
   },
 
-  configsSaved: false,
-
   installHDFSClients: function () {
-    if (!this.get('configsSaved')) {
-      this.set('configsSaved', true);
-      return;
-    }
     var nnHostNames = this.get('content.masterComponentHosts').filterProperty('component', 'NAMENODE').mapProperty('hostName');
     var jnHostNames = this.get('content.masterComponentHosts').filterProperty('component', 'JOURNALNODE').mapProperty('hostName');
     var hostNames = $.extend([], nnHostNames, jnHostNames);