Quellcode durchsuchen

AMBARI-19152 Perf: UI hangs after click on <Next> button, on <Assign Masters> step. (atkach)

Andrii Tkach vor 8 Jahren
Ursprung
Commit
18c269794c

+ 4 - 2
ambari-web/app/controllers/installer.js

@@ -141,11 +141,13 @@ App.InstallerController = App.WizardController.extend({
     var dfd = $.Deferred();
     var dfd = $.Deferred();
     var self = this;
     var self = this;
     var stackServices = App.StackService.find().mapProperty('serviceName');
     var stackServices = App.StackService.find().mapProperty('serviceName');
-    if (!(stackServices && !!stackServices.length && App.StackService.find().objectAt(0).get('stackVersion') == App.get('currentStackVersionNumber'))) {
+    if (!(stackServices.length && App.StackService.find().objectAt(0).get('stackVersion') === App.get('currentStackVersionNumber'))) {
       this.loadServiceComponents().complete(function () {
       this.loadServiceComponents().complete(function () {
         self.set('content.services', App.StackService.find().forEach(function (item) {
         self.set('content.services', App.StackService.find().forEach(function (item) {
           // user the service version from VersionDefinition
           // user the service version from VersionDefinition
-          item.set('serviceVersionDisplay', App.Stack.find().findProperty('isSelected', true).get('stackServices').findProperty('name', item.get('serviceName')).get('latestVersion'));
+          var serviceInStack = App.Stack.find().findProperty('isSelected').get('stackServices').findProperty('name', item.get('serviceName'));
+          var serviceVersionDisplay = serviceInStack ? serviceInStack.get('latestVersion') : item.get('serviceVersion');
+          item.set('serviceVersionDisplay', serviceVersionDisplay);
         }));
         }));
         dfd.resolve();
         dfd.resolve();
       });
       });

+ 1 - 1
ambari-web/app/mixins/wizard/assign_master_components.js

@@ -1182,7 +1182,7 @@ App.AssignMasterComponents = Em.Mixin.create({
     }
     }
   },
   },
 
 
-  nextButtonDisabled: Em.computed.or('App.router.btnClickInProgress', 'submitDisabled'),
+  nextButtonDisabled: Em.computed.or('App.router.btnClickInProgress', 'submitDisabled', 'validationInProgress'),
 
 
   /**
   /**
    * Submit button click handler
    * Submit button click handler

+ 1 - 1
ambari-web/test/mixins/wizard/assign_master_components_test.js

@@ -211,6 +211,6 @@ describe('App.AssignMasterComponents', function () {
   });
   });
 
 
   App.TestAliases.testAsComputedOr(baseObject.create(),
   App.TestAliases.testAsComputedOr(baseObject.create(),
-    'nextButtonDisabled', ['App.router.btnClickInProgress', 'submitDisabled']);
+    'nextButtonDisabled', ['App.router.btnClickInProgress', 'submitDisabled', 'validationInProgress']);
 
 
 });
 });