AMBARI-3794. Clicking +Exception in Default config-group doesnt add new row. (akovalenko)
diff --git a/ambari-web/app/controllers/main/service/info/configs.js b/ambari-web/app/controllers/main/service/info/configs.js
index 5e3e444..105f21d 100644
--- a/ambari-web/app/controllers/main/service/info/configs.js
+++ b/ambari-web/app/controllers/main/service/info/configs.js
@@ -33,6 +33,8 @@
   customConfig: [],
   serviceConfigsData: require('data/service_configs'),
   isApplyingChanges: false,
+  // contain Service Config Property, when user proceed from Select Config Group dialog
+  overrideToAdd: null,
   serviceConfigs: function () {
     return App.config.get('preDefinedServiceConfigs');
   }.property('App.config.preDefinedServiceConfigs'),
@@ -628,6 +630,14 @@
       componentConfig.configs.pushObject(serviceConfigProperty);
       serviceConfigProperty.validate();
     }, this);
+    var overrideToAdd = this.get('overrideToAdd');
+    if (overrideToAdd) {
+      overrideToAdd = componentConfig.configs.findProperty('name', overrideToAdd.name);
+      if (overrideToAdd) {
+        this.addOverrideProperty(overrideToAdd);
+        this.set('overrideToAdd', null);
+      }
+    }
   },
 
   /**
@@ -1725,6 +1735,22 @@
     });
   },
 
+  addOverrideProperty: function(serviceConfigProperty) {
+    var overrides = serviceConfigProperty.get('overrides');
+    if (!overrides) {
+      overrides = [];
+      serviceConfigProperty.set('overrides', overrides);
+    }
+    // create new override with new value
+    var newSCP = App.ServiceConfigProperty.create(serviceConfigProperty);
+    newSCP.set('value', '');
+    newSCP.set('isOriginalSCP', false); // indicated this is overridden value,
+    newSCP.set('parentSCP', serviceConfigProperty);
+    newSCP.set('isEditable', true);
+    console.debug("createOverrideProperty(): Added:", newSCP, " to main-property:", serviceConfigProperty);
+    overrides.pushObject(newSCP);
+  },
+
   selectConfigGroup: function (event) {
     this.set('selectedConfigGroup', event.context);
   }
diff --git a/ambari-web/app/views/common/configs/services_config.js b/ambari-web/app/views/common/configs/services_config.js
index 0ffd5bf..3a501cb 100644
--- a/ambari-web/app/views/common/configs/services_config.js
+++ b/ambari-web/app/views/common/configs/services_config.js
@@ -488,7 +488,6 @@
 
   createOverrideProperty: function (event) {
     var serviceConfigProperty = event.contexts[0];
-    var self = this;
     var serviceConfigController = this.get('controller');
     var selectedConfigGroup = serviceConfigController.get('selectedConfigGroup');
     if (selectedConfigGroup.get('isDefault')) {
@@ -497,31 +496,15 @@
           serviceConfigController.get('configGroups'), function (selectedGroupInPopup) {
             console.log("launchConfigGroupSelectionCreationDialog(): Selected/Created:", selectedGroupInPopup);
             if (selectedGroupInPopup) {
+              serviceConfigController.set('overrideToAdd', serviceConfigProperty);
               serviceConfigController.set('selectedConfigGroup', selectedGroupInPopup);
-              self.addOverrideProperty(serviceConfigProperty);
             }
           });
     } else {
-      this.addOverrideProperty(serviceConfigProperty);
+      serviceConfigController.addOverrideProperty(serviceConfigProperty);
     }
   },
 
-  addOverrideProperty: function(serviceConfigProperty) {
-    var overrides = serviceConfigProperty.get('overrides');
-    if (!overrides) {
-      overrides = [];
-      serviceConfigProperty.set('overrides', overrides);
-    }
-    // create new override with new value
-    var newSCP = App.ServiceConfigProperty.create(serviceConfigProperty);
-    newSCP.set('value', '');
-    newSCP.set('isOriginalSCP', false); // indicated this is overridden value,
-    newSCP.set('parentSCP', serviceConfigProperty);
-    newSCP.set('isEditable', true);
-    console.debug("createOverrideProperty(): Added:", newSCP, " to main-property:", serviceConfigProperty);
-    overrides.pushObject(newSCP);
-  },
-
   showOverrideWindow: function (event) {
     // argument 1
     var serviceConfigProperty = event.contexts[0];