瀏覽代碼

AMBARI-3392. Host override value being shown in other hosts configs as well. (srimanth)

Srimanth Gunturi 11 年之前
父節點
當前提交
4cfd9f7a90

+ 6 - 6
ambari-web/app/controllers/main/host/configs_service.js

@@ -69,17 +69,17 @@ App.MainHostServiceConfigsController = App.MainServiceInfoConfigsController.exte
    * This method will *not load* the overridden properties. However it will
    * This method will *not load* the overridden properties. However it will
    * replace the value shown for properties which this host has override for.
    * replace the value shown for properties which this host has override for.
    */
    */
-  loadServiceConfigHostsOverrides: function (serviceConfig) {
+  loadServiceConfigHostsOverrides: function (serviceConfigs, loadedHostToOverrideSiteToTagMap) {
     var thisHostName = this.get('host.hostName');
     var thisHostName = this.get('host.hostName');
     var configKeyToConfigMap = {};
     var configKeyToConfigMap = {};
-    serviceConfig.configs.forEach(function (item) {
+    serviceConfigs.forEach(function (item) {
       configKeyToConfigMap[item.name] = item;
       configKeyToConfigMap[item.name] = item;
     });
     });
     var typeTagToHostMap = {};
     var typeTagToHostMap = {};
     var urlParams = [];
     var urlParams = [];
-    for ( var hostname in this.loadedHostToOverrideSiteToTagMap) {
+    for ( var hostname in loadedHostToOverrideSiteToTagMap) {
       if (hostname === thisHostName) {
       if (hostname === thisHostName) {
-        var overrideTypeTags = this.loadedHostToOverrideSiteToTagMap[hostname];
+        var overrideTypeTags = loadedHostToOverrideSiteToTagMap[hostname];
         for ( var type in overrideTypeTags) {
         for ( var type in overrideTypeTags) {
           var tag = overrideTypeTags[type];
           var tag = overrideTypeTags[type];
           typeTagToHostMap[type + "///" + tag] = hostname;
           typeTagToHostMap[type + "///" + tag] = hostname;
@@ -126,11 +126,11 @@ App.MainHostServiceConfigsController = App.MainServiceInfoConfigsController.exte
         }
         }
         if (serviceConfig) {
         if (serviceConfig) {
           // Value of this property is different for this host.
           // Value of this property is different for this host.
-          console.log("loadServiceConfigHostsOverrides(" + this.get('host.hostName') + "): [" + hostname + "] OVERRODE(" + serviceConfig.name + "): " + serviceConfig.value + " -> " + hostOverrideValue);
+          console.log("loadServiceConfigHostsOverrides(" + hostname + "): [" + hostname + "] OVERRODE(" + serviceConfig.name + "): " + serviceConfig.value + " -> " + hostOverrideValue);
           serviceConfig.value = hostOverrideValue;
           serviceConfig.value = hostOverrideValue;
           serviceConfig.defaultValue = hostOverrideValue;
           serviceConfig.defaultValue = hostOverrideValue;
           serviceConfig.isOriginalSCP = false;
           serviceConfig.isOriginalSCP = false;
-          serviceConfig.selectedHostOptions = [this.get('host.hostName')];
+          serviceConfig.selectedHostOptions = [hostname];
         }
         }
       }
       }
     });
     });

+ 6 - 2
ambari-web/app/controllers/main/service/info/configs.js

@@ -475,9 +475,8 @@ App.MainServiceInfoConfigsController = Em.Controller.extend({
     this.addHostNamesToGlobalConfig();
     this.addHostNamesToGlobalConfig();
 
 
     var allConfigs = this.get('globalConfigs').concat(configs);
     var allConfigs = this.get('globalConfigs').concat(configs);
-    //this.loadServiceConfigHostsOverrides(serviceConfigs, this.loadedHostToOverrideSiteToTagMap);
     //STEP 9: Load and add host override configs
     //STEP 9: Load and add host override configs
-    App.config.loadServiceConfigHostsOverrides(allConfigs, this.loadedHostToOverrideSiteToTagMap);
+    this.loadServiceConfigHostsOverrides(allConfigs, this.loadedHostToOverrideSiteToTagMap);
     var restartData = this.loadActualConfigsAndCalculateRestarts();
     var restartData = this.loadActualConfigsAndCalculateRestarts();
     //STEP 10: creation of serviceConfig object which contains configs for current service
     //STEP 10: creation of serviceConfig object which contains configs for current service
     var serviceConfig = App.config.createServiceConfig(serviceName);
     var serviceConfig = App.config.createServiceConfig(serviceName);
@@ -495,6 +494,11 @@ App.MainServiceInfoConfigsController = Em.Controller.extend({
     this.checkForSecureConfig(this.get('selectedService'));
     this.checkForSecureConfig(this.get('selectedService'));
     this.set('dataIsLoaded', true);
     this.set('dataIsLoaded', true);
   },
   },
+  
+  loadServiceConfigHostsOverrides: function(allConfigs, loadedHostToOverrideSiteToTagMap) {
+    App.config.loadServiceConfigHostsOverrides(allConfigs, loadedHostToOverrideSiteToTagMap);
+  },
+  
   /**
   /**
    * Changes format from Object to Array
    * Changes format from Object to Array
    *
    *