You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by vi...@apache.org on 2012/06/07 00:45:45 UTC

svn commit: r1347189 - in /incubator/ambari/branches/ambari-186: CHANGES.txt hmc/db/schema.dump hmc/js/configureServices.js hmc/js/configureServicesUtils.js hmc/js/manageServices.js

Author: vikram
Date: Wed Jun  6 22:45:45 2012
New Revision: 1347189

URL: http://svn.apache.org/viewvc?rev=1347189&view=rev
Log:
AMBARI-325. Reverting because MR vmem options are useless without option to enable or disable memory-monitoring. (Contributed by Mahadev)

Modified:
    incubator/ambari/branches/ambari-186/CHANGES.txt
    incubator/ambari/branches/ambari-186/hmc/db/schema.dump
    incubator/ambari/branches/ambari-186/hmc/js/configureServices.js
    incubator/ambari/branches/ambari-186/hmc/js/configureServicesUtils.js
    incubator/ambari/branches/ambari-186/hmc/js/manageServices.js

Modified: incubator/ambari/branches/ambari-186/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/ambari-186/CHANGES.txt?rev=1347189&r1=1347188&r2=1347189&view=diff
==============================================================================
--- incubator/ambari/branches/ambari-186/CHANGES.txt (original)
+++ incubator/ambari/branches/ambari-186/CHANGES.txt Wed Jun  6 22:45:45 2012
@@ -6,6 +6,8 @@ characters wide.
 
 Release 0.1.x - unreleased
 
+  AMBARI-325. Reverted the changes because they are useless without an option to enable/disable memory-monitoring.
+
   AMBARI-404. Unify the top nav for both Monitoring and Cluster Management (Yusaku via Vikram)
 
   AMBARI-403. Show fixed count of total nodes during all bootstrap phases (Hitesh via Vikram)

Modified: incubator/ambari/branches/ambari-186/hmc/db/schema.dump
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/ambari-186/hmc/db/schema.dump?rev=1347189&r1=1347188&r2=1347189&view=diff
==============================================================================
--- incubator/ambari/branches/ambari-186/hmc/db/schema.dump (original)
+++ incubator/ambari/branches/ambari-186/hmc/db/schema.dump Wed Jun  6 22:45:45 2012
@@ -288,26 +288,23 @@ INSERT OR REPLACE INTO "ConfigProperties
 -- maps to mapred_red_tasks_max in gscluster.
 INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_red_tasks_max", "2", "Number of Reduce slots per node", "Number of slots that Reduce tasks that run simultaneously can occupy on a TaskTracker.", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"" }' );
 
--- doesn't map to anything. Introduced for convenience purposes.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_memory_scheduling_enabled", "checked", "Enable memory-based scheduling/monitoring?", "To enable memory based scheduling/monitoring or not", "MAPREDUCE" , "ONOFF", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "ONOFF", "unit":"", "isMetaProperty": "true", "childConfigsOnMetaPropEnabled": "[ \"mapred_cluster_map_mem_mb\", \"mapred_cluster_red_mem_mb\", \"mapred_cluster_max_map_mem_mb\", \"mapred_cluster_max_red_mem_mb\", \"mapred_job_map_mem_mb\", \"mapred_job_red_mem_mb\" ]", "childConfigsOnMetaPropDisabled": "[]" }' );
-
 -- maps to mapred_cluster_map_mem_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_map_mem_mb", "-1", "Cluster's Map slot size (virtual memory)", "The virtual memory size of a single Map slot in the MapReduce framework", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_map_mem_mb", "-1", "Cluster's Map slot size (virtual memory)", "The virtual memory size of a single Map slot in the MapReduce framework", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_cluster_red_mem_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_red_mem_mb", "-1", "Cluster's Reduce slot size (virtual memory)", "The virtual memory size of a single Reduce slot in the MapReduce framework", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_red_mem_mb", "-1", "Cluster's Reduce slot size (virtual memory)", "The virtual memory size of a single Reduce slot in the MapReduce framework", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_cluster_max_map_mem_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_max_map_mem_mb", "-1", "Upper limit on virtual memory for single Map task", "Upper limit on virtual memory size for a single Map task of any MapReduce job", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_max_map_mem_mb", "-1", "Upper limit on virtual memory for single Map task", "Upper limit on virtual memory size for a single Map task of any MapReduce job", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_cluster_max_red_mem_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_max_red_mem_mb", "-1", "Upper limit on virtual memory for single Reduce task", "Upper limit on virtual memory size for a single Reduce task of any MapReduce job", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_cluster_max_red_mem_mb", "-1", "Upper limit on virtual memory for single Reduce task", "Upper limit on virtual memory size for a single Reduce task of any MapReduce job", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_job_map_mem_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_job_map_mem_mb", "-1", "Default virtual memory for a job's map-task", "Virtual memory for single Map task", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_job_map_mem_mb", "-1", "Default virtual memory for a job's map-task", "Virtual memory for single Map task", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_job_map_red_mb in gscluster.
-INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_job_red_mem_mb", "-1", "Default virtual memory for a job's reduce-task", "Virtual memory for single Reduce task", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB", "metaProperty": "mapred_cluster_memory_scheduling_enabled" }' );
+INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_job_red_mem_mb", "-1", "Default virtual memory for a job's reduce-task", "Virtual memory for single Reduce task", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );
 
 -- maps to mapred_child_java_opts_sz in gscluster in MB.
 INSERT OR REPLACE INTO "ConfigProperties" ( key, default_value, display_name, description, service_name, display_type, display_attributes ) VALUES ( "mapred_child_java_opts_sz", "768", "Java options for MapReduce tasks", "Java options for the TaskTracker child processes.", "MAPREDUCE" , "", '{ "isPassword": false, "noDisplay": false, "reconfigurable": true, "displayType": "text", "unit":"MB" }' );

Modified: incubator/ambari/branches/ambari-186/hmc/js/configureServices.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/ambari-186/hmc/js/configureServices.js?rev=1347189&r1=1347188&r2=1347189&view=diff
==============================================================================
--- incubator/ambari/branches/ambari-186/hmc/js/configureServices.js (original)
+++ incubator/ambari/branches/ambari-186/hmc/js/configureServices.js Wed Jun  6 22:45:45 2012
@@ -40,7 +40,6 @@ function renderConfigureServicesInternal
   var optionsSummary = constructDOM(optionsInfo);
  
   globalYui.one("#configureClusterAdvancedDynamicRenderDivId").setContent( optionsSummary );
-  postDOMRendering(optionsInfo);
   hideLoadingImg();
   globalYui.one("#configureClusterAdvancedCoreDivId").setStyle("display", "block");
 }

Modified: incubator/ambari/branches/ambari-186/hmc/js/configureServicesUtils.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/ambari-186/hmc/js/configureServicesUtils.js?rev=1347189&r1=1347188&r2=1347189&view=diff
==============================================================================
--- incubator/ambari/branches/ambari-186/hmc/js/configureServicesUtils.js (original)
+++ incubator/ambari/branches/ambari-186/hmc/js/configureServicesUtils.js Wed Jun  6 22:45:45 2012
@@ -3,81 +3,32 @@
 
 var globalPasswordsArray = [];
 
-var globalOptionsInfo = null;
-
-function setRenderingForNestedProps(service, property, isMetaPropEnabled) {
-  var displayAttributes = globalOptionsInfo['services'][service]['properties'][property]['displayAttributes'];
-
-  var styleForEnabledConfigs = 'block';
-  var styleForDisabledConfigs = 'none';
-  if (!isMetaPropEnabled) {
-    styleForEnabledConfigs = 'none';
-    styleForDisabledConfigs = 'block';
-  }
-
-  var configsWhenItIsEnabled = globalYui.JSON.parse(displayAttributes.childConfigsOnMetaPropEnabled);
-  for (index in configsWhenItIsEnabled) {
-    globalYui.one('#' + configsWhenItIsEnabled[index]).setStyle('display', styleForEnabledConfigs);
-  }
-
-  var configsWhenItIsDisabled = globalYui.JSON.parse(displayAttributes.childConfigsOnMetaPropDisabled);
-  for (index in configsWhenItIsDisabled) {
-    globalYui.one('#' + configsWhenItIsDisabled[index]).setStyle('display', styleForDisabledConfigs);
-  }
-}
-
-function generateDivForService (optionsInfo, service, property, renderLevel) {
-
-//  globalYui.log(" === for " + service + "." + property );
-	var option = optionsInfo['services'][service]["properties"][property];
-
-  var type = convertDisplayType(optionsInfo['services'][service]['properties'][property]['type']);
-  if (type == "NODISPLAY") {
-    return '';
-  }
-
-  var displayAttributes = null;
-  if (optionsInfo['services'][service]['properties'][property]['displayAttributes']) {
-    displayAttributes = optionsInfo['services'][service]['properties'][property]['displayAttributes'];
-  }
-
-  var unit = optionsInfo['services'][service]['properties'][property]['unit'];
+function generateDivForService (option, type, service, property, unit, displayAttributes) {
+	
   var unitString = (unit != null) ? unit : '';
-
   var readOnlyFlag= false;
   if (displayAttributes != null && displayAttributes.editable != null
       && !displayAttributes.editable) {
     readOnlyFlag = true;
   }
 
-  var divId = property;
-  if (displayAttributes != null && displayAttributes.hasOwnProperty("isMetaProperty") && displayAttributes["isMetaProperty"] == "true") {
-    divId = 'formElement-' + service + '-' + property;
-  }
-
-  var retString = '<div class="formElement" id="' + divId + '">' +
+  var retString = '<div class="formElement">' +
     '<label for="' + service + '">' + option['displayName'] + '</label>' +
     //((unitString != '') ? '<div class="input-append">' : '') +
-    '<input class="unit-' + unit + '" type="' + type + '" id="' + divId + '" name="' + service + '" value="' + option['value'] + '"';
+    '<input class="unit-' + unit + '" type="' + type + '" id="' + property + '" name="' + service + '" value="' + option['value'] + '"';
   if (readOnlyFlag) {
     retString += ' readonly="readonly" ';
   }
 
-  if ( option.type == 'ONOFF') {
-    if ( option.value == "checked") {
-      retString += ' checked=true';
-    }
-  }
-
   retString += '> ' + unitString +
     '<div class="contextualHelp">' + option['description'] + '</div>' +
     //((unitString != '') ? '</div>' : '') +
     '<div class="formInputErrorReason" id="' + property + 'ErrorReason' + '"></div>' +
     '</div>';
   if (type == "password") {
-    retString += '<div class="formElement" id="' + divId + '">' +
+    retString += '<div class="formElement">' +
       '<label for="' + service + '"> Retype ' + option['displayName'] + '</label>' +
-      '<input type="' + type + '" id="' + divId + 'SecretService" name="' + service + '" value="' + option['value'] + '">' +
+      '<input type="' + type + '" id="' + property + 'SecretService" name="' + service + '" value="' + option['value'] + '">' +
       '<div class="contextualHelp">' + option['description'] + '</div>' +
       '<div class="formInputErrorReason" id="' + property + 'SecretServiceErrorReason' + '" ></div>' +
       '</div>';
@@ -90,68 +41,9 @@ function generateDivForService (optionsI
     globalYui.log("Global Passwords Array: " + globalYui.Lang.dump(globalPasswordsArray));
 
   }
-
-  if (displayAttributes != null) {
-    if(displayAttributes.hasOwnProperty("isMetaProperty") && displayAttributes["isMetaProperty"] == "true") {
-
-      // This is a meta-property
-      var metaPropsRetString = retString;
-
-      var configsWhenItIsEnabled = globalYui.JSON.parse(displayAttributes.childConfigsOnMetaPropEnabled);
-      for (index in configsWhenItIsEnabled) {
-        metaPropsRetString += generateDivForService(optionsInfo, service, configsWhenItIsEnabled[index], 2);
-      }
-
-      var configsWhenItIsDisabled = globalYui.JSON.parse(displayAttributes.childConfigsOnMetaPropDisabled);
-      for (index in configsWhenItIsDisabled) {
-        metaPropsRetString += generateDivForService(optionsInfo, service, configsWhenItIsEnabled[index], 2);
-      }
-
-      return metaPropsRetString;
-    } else if (renderLevel == 1 && displayAttributes.hasOwnProperty("metaProperty")) {
-      // This is not a top-level property and will be taken care of by its parent, so ignore it at renderLevel 1
-      return '';
-    }
-  }
-
   return retString;
 }
 
-// TO Add click-handlers etc.
-function postDOMRendering(optionsInfo) {
-  for (servicesKey in optionsInfo['services']) {
-    if (optionsInfo['services'][servicesKey]["isEnabled"] == true) {
-      for (property in optionsInfo['services'][servicesKey]["properties"]) {
-
-	      var option = optionsInfo['services'][servicesKey]["properties"][property];
-
-        var displayAttributes = null;
-        if (option['displayAttributes']) {
-          displayAttributes = option['displayAttributes'];
-          if(displayAttributes.hasOwnProperty("isMetaProperty") && displayAttributes["isMetaProperty"] == "true") {
-
-            // This is a meta-property
-            if (option.value == "checked") {
-              setRenderingForNestedProps(servicesKey, property, true);
-            } else {
-              setRenderingForNestedProps(servicesKey, property, false);
-            }
-
-            // Add clickhandlers
-            var metaNode = globalYui.one('#formElement-' + servicesKey + '-' + property);
-            metaNode.delegate('click', function (e) {
-              var splits = e.target.get('id').split("-");
-              var serviceOfThisProp = splits[1];
-              var propertyName = splits[2];
-              setRenderingForNestedProps(serviceOfThisProp, propertyName, e.target.get('checked'));
-          }, 'input[type=checkbox]');
-          }
-        }
-      }
-    }
-  }
-}
-
 function constructDOM(optionsInfo) {
   /* Reset globalPasswordsArray at the beginning of each render cycle to
    * avoid using stale data from the last run - this isn't a problem on the
@@ -164,11 +56,21 @@ function constructDOM(optionsInfo) {
     if (optionsInfo['services'][servicesKey]["isEnabled"] == true) {
       var serviceNeedsRender = false;
       var propertiesRendering = "";
-      globalOptionsInfo = optionsInfo;
       for (property in optionsInfo['services'][servicesKey]["properties"]) {
         // service has configs, so needs render
+        var type = convertDisplayType(optionsInfo['services'][servicesKey]['properties'][property]['type']);
+//      globalYui.log("TYPE: " + type + "Property: " + property);
+        if (type == "NODISPLAY") {
+            continue;
+        }
         serviceNeedsRender = true;
-        propertiesRendering += generateDivForService(optionsInfo, servicesKey, property, 1);
+        var unit = optionsInfo['services'][servicesKey]['properties'][property]['unit'];
+        var displayAttributes = null;
+        if (optionsInfo['services'][servicesKey]['properties'][property]['displayAttributes']) {
+           displayAttributes = optionsInfo['services'][servicesKey]['properties'][property]['displayAttributes'];
+        }
+
+        propertiesRendering += generateDivForService(optionsInfo['services'][servicesKey]["properties"][property], type, servicesKey, property, unit, displayAttributes);
       }
       if (serviceNeedsRender) {
         optionsSummary += "<fieldset> <legend>" + servicesKey + "</legend>";

Modified: incubator/ambari/branches/ambari-186/hmc/js/manageServices.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/ambari-186/hmc/js/manageServices.js?rev=1347189&r1=1347188&r2=1347189&view=diff
==============================================================================
--- incubator/ambari/branches/ambari-186/hmc/js/manageServices.js (original)
+++ incubator/ambari/branches/ambari-186/hmc/js/manageServices.js Wed Jun  6 22:45:45 2012
@@ -291,7 +291,6 @@ function setupReconfigureScreens(service
     confirmationDataPanelBodyContent = '<div id="confirmationDataPanelBodyContent">' + confirmationDataPanelBodyContent + '</div>';
 
     confirmationDataPanel.set( 'bodyContent', confirmationDataPanelBodyContent );
-    postDOMRendering(serviceConfigurationData);
   });
 }