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/04/24 15:10:00 UTC

ambari git commit: AMBARI-10663. Add config handling for Tez sorter impl (aonishuk)

Repository: ambari
Updated Branches:
  refs/heads/trunk e87719153 -> df35cf8c0


AMBARI-10663. Add config handling for Tez sorter impl (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/df35cf8c
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/df35cf8c
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/df35cf8c

Branch: refs/heads/trunk
Commit: df35cf8c06645f25aa0af69ea7cd39a631f50b0a
Parents: e877191
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Fri Apr 24 16:09:52 2015 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Fri Apr 24 16:09:52 2015 +0300

----------------------------------------------------------------------
 .../2.3/services/TEZ/configuration/tez-site.xml | 52 ++++++++++++++++++++
 .../stacks/HDP/2.3/services/stack_advisor.py    | 16 +++++-
 2 files changed, 67 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/df35cf8c/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
index 660b44b..b39cd93 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
@@ -25,4 +25,56 @@
       Value format: Comma separated list of users, followed by whitespace, followed by a comma separated list of groups.
     </description>
   </property>
+
+  <property>
+    <name>tez.runtime.sorter.class</name>
+    <value>PIPELINED</value>
+    <description>Which sorter implementation to use</description>
+    <value-attributes>
+      <type>value-list</type>
+      <entries>
+        <entry>
+          <value>PIPELINED</value>
+          <label>Pipelined Sorter</label>
+        </entry>
+        <entry>
+          <value>LEGACY</value>
+          <label>Legacy Sorter</label>
+        </entry>
+      </entries>
+      <selection-cardinality>1</selection-cardinality>
+    </value-attributes>
+  </property>
+
+  <property>
+    <name>tez.runtime.pipelined.sorter.sort.threads</name>
+    <value>2</value>
+    <description>Tez runtime pipelined sorter sort threads</description>
+    <value-attributes>
+      <type>int</type>
+    </value-attributes>
+    <depends-on>
+      <property>
+        <type>tez-site</type>
+        <name>tez.runtime.sorter.class</name>
+      </property>
+    </depends-on>
+  </property>
+
+  <property>
+    <name>tez.runtime.io.sort.mb</name>
+    <value>272</value>
+    <description>The size of the sort buffer when output needs to be sorted</description>
+    <value-attributes>
+      <type>int</type>
+      <unit>MB</unit>
+    </value-attributes>
+    <depends-on>
+      <property>
+        <type>tez-site</type>
+        <name>tez.runtime.sorter.class</name>
+      </property>
+    </depends-on>
+  </property>
+
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/df35cf8c/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
index bffbc26..8b56eb9 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
@@ -18,4 +18,18 @@ limitations under the License.
 """
 
 class HDP23StackAdvisor(HDP22StackAdvisor):
-  pass
\ No newline at end of file
+
+  def getServiceConfigurationRecommenderDict(self):
+    parentRecommendConfDict = super(HDP23StackAdvisor, self).getServiceConfigurationRecommenderDict()
+    childRecommendConfDict = {
+      "TEZ": self.recommendTezConfigurations,
+    }
+    parentRecommendConfDict.update(childRecommendConfDict)
+    return parentRecommendConfDict
+
+  def recommendTezConfigurations(self, configurations, clusterData, services, hosts):
+    super(HDP23StackAdvisor, self).recommendTezConfigurations(configurations, clusterData, services, hosts)
+    if "tez-site" in services["configurations"] and "tez.runtime.sorter.class" in services["configurations"]["tez-site"]["properties"]:
+      if services["configurations"]["tez-site"]["properties"]["tez.runtime.sorter.class"] == "LEGACY":
+        putTezAttribute = self.putPropertyAttribute(configurations, "tez-site")
+        putTezAttribute("tez.runtime.io.sort.mb","maximum", 2047)
\ No newline at end of file