You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ao...@apache.org on 2015/06/03 17:12:13 UTC
ambari git commit: AMBARI-11651. Ambari does not warn if
mapreduce.map.java.opts sets Xmx to higher value than map memory mb
(aonishuk)
Repository: ambari
Updated Branches:
refs/heads/trunk b549e35d4 -> 29fc9c297
AMBARI-11651. Ambari does not warn if mapreduce.map.java.opts sets Xmx to higher value than map memory mb (aonishuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/29fc9c29
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/29fc9c29
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/29fc9c29
Branch: refs/heads/trunk
Commit: 29fc9c2976352d60d4708d99dd525a084a34f28e
Parents: b549e35
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Wed Jun 3 18:12:06 2015 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Wed Jun 3 18:12:06 2015 +0300
----------------------------------------------------------------------
.../stacks/HDP/2.2/services/stack_advisor.py | 19 +++++++++++++++++++
.../stacks/2.2/common/test_stack_advisor.py | 5 +++++
2 files changed, 24 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/29fc9c29/ambari-server/src/main/resources/stacks/HDP/2.2/services/stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.2/services/stack_advisor.py
index 56cc492..df667bc 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/stack_advisor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/stack_advisor.py
@@ -652,6 +652,25 @@ class HDP22StackAdvisor(HDP21StackAdvisor):
{"config-name": 'mapreduce.reduce.memory.mb', "item": self.validatorLessThenDefaultValue(properties, recommendedDefaults, 'mapreduce.reduce.memory.mb')},
{"config-name": 'yarn.app.mapreduce.am.resource.mb', "item": self.validatorLessThenDefaultValue(properties, recommendedDefaults, 'yarn.app.mapreduce.am.resource.mb')},
{"config-name": 'yarn.app.mapreduce.am.command-opts', "item": self.validateXmxValue(properties, recommendedDefaults, 'yarn.app.mapreduce.am.command-opts')}]
+
+ if checkXmxValueFormat(properties['mapreduce.map.java.opts']):
+ mapreduceMapJavaOpts = formatXmxSizeToBytes(getXmxSize(properties['mapreduce.map.java.opts'])) / (1024.0 * 1024)
+ mapreduceMapMemoryMb = to_number(properties['mapreduce.map.memory.mb'])
+ if mapreduceMapJavaOpts > mapreduceMapMemoryMb:
+ validationItems.append({"config-name": 'mapreduce.map.java.opts', "item": self.getWarnItem("mapreduce.map.java.opts Xmx should be less than mapreduce.map.memory.mb ({0})".format(mapreduceMapMemoryMb))})
+
+ if checkXmxValueFormat(properties['mapreduce.reduce.java.opts']):
+ mapreduceReduceJavaOpts = formatXmxSizeToBytes(getXmxSize(properties['mapreduce.reduce.java.opts'])) / (1024.0 * 1024)
+ mapreduceReduceMemoryMb = to_number(properties['mapreduce.reduce.memory.mb'])
+ if mapreduceReduceJavaOpts > mapreduceReduceMemoryMb:
+ validationItems.append({"config-name": 'mapreduce.reduce.java.opts', "item": self.getWarnItem("mapreduce.reduce.java.opts Xmx should be less than mapreduce.reduce.memory.mb ({0})".format(mapreduceReduceMemoryMb))})
+
+ if checkXmxValueFormat(properties['yarn.app.mapreduce.am.command-opts']):
+ yarnAppMapreduceAmCommandOpts = formatXmxSizeToBytes(getXmxSize(properties['yarn.app.mapreduce.am.command-opts'])) / (1024.0 * 1024)
+ yarnAppMapreduceAmResourceMb = to_number(properties['yarn.app.mapreduce.am.resource.mb'])
+ if yarnAppMapreduceAmCommandOpts > yarnAppMapreduceAmResourceMb:
+ validationItems.append({"config-name": 'yarn.app.mapreduce.am.command-opts', "item": self.getWarnItem("yarn.app.mapreduce.am.command-opts Xmx should be less than yarn.app.mapreduce.am.resource.mb ({0})".format(yarnAppMapreduceAmResourceMb))})
+
return self.toConfigurationValidationProblems(validationItems, "mapred-site")
def validateHDFSConfigurationsEnv(self, properties, recommendedDefaults, configurations, services, hosts):
http://git-wip-us.apache.org/repos/asf/ambari/blob/29fc9c29/ambari-server/src/test/python/stacks/2.2/common/test_stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.2/common/test_stack_advisor.py
index 04d6ef1..4ad289d 100644
--- a/ambari-server/src/test/python/stacks/2.2/common/test_stack_advisor.py
+++ b/ambari-server/src/test/python/stacks/2.2/common/test_stack_advisor.py
@@ -2343,6 +2343,11 @@ class TestHDP22StackAdvisor(TestCase):
'message': 'Value is less than the recommended default of -Xmx546m',
'type': 'configuration',
'config-name': 'yarn.app.mapreduce.am.command-opts',
+ 'level': 'WARN'},
+ {'config-type': 'mapred-site',
+ 'message': 'yarn.app.mapreduce.am.command-opts Xmx should be less than yarn.app.mapreduce.am.resource.mb (410)',
+ 'type': 'configuration',
+ 'config-name': 'yarn.app.mapreduce.am.command-opts',
'level': 'WARN'}]
res = self.stackAdvisor.validateMapReduce2Configurations(properties, recommendedDefaults, {}, '', '')