Pārlūkot izejas kodu

AMBARI-5711. 'Background operations' window displayed after attempt to switch HBase RegionServer to 'Decommission' state. (onechiporenko)

Oleg Nechiporenko 11 gadi atpakaļ
vecāks
revīzija
2220427aae

+ 21 - 26
ambari-web/app/controllers/main/host.js

@@ -343,33 +343,28 @@ App.MainHostController = Em.ArrayController.extend({
       } else {
         hostsWithComponentInProperState = components.filterProperty('workStatus','STARTED').mapProperty('host.hostName');
         //For decommession
-        if (svcName == "HBASE") {
-          // HBASE service, decommission RegionServer in batch requests
-          App.router.get('mainHostDetailsController').warnBeforeDecommission(hostNames, svcName, masterName, slaveName);
-        } else {
-          var parameters = {
-            "slave_type": slaveName
-          };
-          var contextString = turn_off? 'hosts.host.' + slaveName.toLowerCase() + '.recommission':
-            'hosts.host.' + slaveName.toLowerCase() + '.decommission';
-          if (turn_off) {
-            parameters['included_hosts'] = hostsWithComponentInProperState.join(',')
-          }
-          else {
-            parameters['excluded_hosts'] = hostsWithComponentInProperState.join(',');
-          }
-          App.ajax.send({
-            name: 'bulk_request.decommission',
-            sender: this,
-            data: {
-              context: Em.I18n.t(contextString),
-              serviceName: service.get('serviceName'),
-              componentName: operationData.componentName,
-              parameters: parameters
-            },
-            success: 'bulkOperationForHostComponentsSuccessCallback'
-          });
+        var parameters = {
+          "slave_type": slaveName
+        };
+        var contextString = turn_off? 'hosts.host.' + slaveName.toLowerCase() + '.recommission':
+          'hosts.host.' + slaveName.toLowerCase() + '.decommission';
+        if (turn_off) {
+          parameters['included_hosts'] = hostsWithComponentInProperState.join(',')
+        }
+        else {
+          parameters['excluded_hosts'] = hostsWithComponentInProperState.join(',');
         }
+        App.ajax.send({
+          name: 'bulk_request.decommission',
+          sender: this,
+          data: {
+            context: Em.I18n.t(contextString),
+            serviceName: service.get('serviceName'),
+            componentName: operationData.componentName,
+            parameters: parameters
+          },
+          success: 'bulkOperationForHostComponentsSuccessCallback'
+        });
       }
     }
     else {

+ 1 - 26
ambari-web/app/controllers/main/host/details.js

@@ -940,7 +940,7 @@ App.MainHostDetailsController = Em.Controller.extend({
         this.doDecommission(hostName, svcName, "JOBTRACKER", "TASKTRACKER");
         break;
       case 'HBASE':
-        this.warnBeforeDecommission(hostName, svcName, "HBASE_MASTER", "HBASE_REGIONSERVER");
+        this.doDecommission(hostName, svcName, "HBASE_MASTER", "HBASE_REGIONSERVER");
     }
     this.showBackgroundOperationsPopup();
   },
@@ -1006,31 +1006,6 @@ App.MainHostDetailsController = Em.Controller.extend({
     });
   },
 
-  /**
-   * Recommend user to put component in MM before decommission (for HBASE only)
-   * @method warnBeforeDecommission
-   * @param {string[]} hostNames - list of host when run from bulk operations or current host
-   * @param {string} serviceName - serviceName
-   * @param {string} componentName - master component name
-   * @param {string} slaveType - slave component name
-   */
-  warnBeforeDecommission: function(hostNames, serviceName, componentName, slaveType) {
-    if (App.HostComponent.find().findProperty('componentName', componentName).get('passiveState') == "OFF") {
-      App.ModalPopup.show({
-        header: Em.I18n.t('common.warning'),
-        message: function () {
-          return Em.I18n.t('hostPopup.reccomendation.beforeDecommission').format(App.format.components[componentName]);
-        }.property(),
-        bodyClass: Em.View.extend({
-          template: Em.Handlebars.compile('<div class="alert alert-warning">{{message}}</div>')
-        }),
-        secondary: false
-      });
-    } else {
-      this.doDecommissionRegionServer(hostNames, serviceName, componentName, slaveType);
-    }
-  },
-
   /**
    * Performs Decommission (for RegionServer)
    * @method doDecommissionRegionServer

+ 1 - 1
ambari-web/app/messages.js

@@ -1555,7 +1555,7 @@ Em.I18n.translations = {
   'hosts.host.regionserver.decommission.batch2':'Decommission RegionServer - Stop RegionServer',
   'hosts.host.regionserver.decommission.batch3':'Decommission RegionServer - Turn drain mode off',
   'hosts.host.hbase_regionserver.recommission':'Recommission RegionServer',
-  'hosts.host.hbase_regionserver.decommsion':'Decommission RegionServer',
+  'hosts.host.hbase_regionserver.decommission':'Decommission RegionServer',
   'hosts.host.decommissioned':'Decommissioned',
   'hosts.host.decommissioning':'Decommissioning',
 

+ 1 - 3
ambari-web/test/controllers/main/host/details_test.js

@@ -905,13 +905,11 @@ describe('App.MainHostDetailsController', function () {
 
     beforeEach(function () {
       sinon.stub(controller, "doDecommission", Em.K);
-      sinon.stub(controller, "warnBeforeDecommission", Em.K);
       sinon.stub(controller, "showBackgroundOperationsPopup", Em.K);
     });
 
     afterEach(function () {
       controller.doDecommission.restore();
-      controller.warnBeforeDecommission.restore();
       controller.showBackgroundOperationsPopup.restore();
     });
 
@@ -932,7 +930,7 @@ describe('App.MainHostDetailsController', function () {
     });
     it('HBASE service', function () {
       controller.runDecommission('host1', 'HBASE');
-      expect(controller.warnBeforeDecommission.calledWith('host1', 'HBASE', "HBASE_MASTER", "HBASE_REGIONSERVER")).to.be.true;
+      expect(controller.doDecommission.calledWith('host1', 'HBASE', "HBASE_MASTER", "HBASE_REGIONSERVER")).to.be.true;
       expect(controller.showBackgroundOperationsPopup.calledOnce).to.be.true;
     });
   });