You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-commits@hadoop.apache.org by to...@apache.org on 2011/01/20 01:03:11 UTC

svn commit: r1061068 - in /hadoop/mapreduce/trunk: CHANGES.txt src/java/org/apache/hadoop/mapred/TaskRunner.java

Author: todd
Date: Thu Jan 20 00:03:11 2011
New Revision: 1061068

URL: http://svn.apache.org/viewvc?rev=1061068&view=rev
Log:
MAPREDUCE-1085. For tasks, "ulimit -v -1" is being run when user doesn't specify a ulimit. Contributed by Todd Lipcon

Modified:
    hadoop/mapreduce/trunk/CHANGES.txt
    hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskRunner.java

Modified: hadoop/mapreduce/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/CHANGES.txt?rev=1061068&r1=1061067&r2=1061068&view=diff
==============================================================================
--- hadoop/mapreduce/trunk/CHANGES.txt (original)
+++ hadoop/mapreduce/trunk/CHANGES.txt Thu Jan 20 00:03:11 2011
@@ -476,6 +476,9 @@ Release 0.22.0 - Unreleased
     MAPREDUCE-2248. DistributedRaidFileSystem should unraid only the corrupt
     block (Ramkumar Vadali via schen)
 
+    MAPREDUCE-1085. For tasks, "ulimit -v -1" is being run when user doesn't
+    specify a ulimit (todd)
+
 Release 0.21.1 - Unreleased
 
   NEW FEATURES

Modified: hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskRunner.java
URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskRunner.java?rev=1061068&r1=1061067&r2=1061068&view=diff
==============================================================================
--- hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskRunner.java (original)
+++ hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskRunner.java Thu Jan 20 00:03:11 2011
@@ -313,8 +313,13 @@ abstract class TaskRunner extends Thread
    * @return
    */
   private List<String> getVMSetupCmd() {
-    String[] ulimitCmd = Shell.getUlimitMemoryCommand(getChildUlimit(conf));
+
+    int ulimit = getChildUlimit(conf);
+    if (ulimit <= 0) {
+      return null;
+    }
     List<String> setup = null;
+    String[] ulimitCmd = Shell.getUlimitMemoryCommand(ulimit);
     if (ulimitCmd != null) {
       setup = new ArrayList<String>();
       for (String arg : ulimitCmd) {