You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by zj...@apache.org on 2014/11/01 01:44:19 UTC

git commit: YARN-2711. Fixed TestDefaultContainerExecutor#testContainerLaunchError failure on Windows. Contributed by Varun Vasudev.

Repository: hadoop
Updated Branches:
  refs/heads/trunk 80bb7d479 -> 1cd088fd9


YARN-2711. Fixed TestDefaultContainerExecutor#testContainerLaunchError failure on Windows. Contributed by Varun Vasudev.


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

Branch: refs/heads/trunk
Commit: 1cd088fd9dac3015df0b6281974fc6b6c3ece20d
Parents: 80bb7d4
Author: Zhijie Shen <zj...@apache.org>
Authored: Fri Oct 31 17:43:30 2014 -0700
Committer: Zhijie Shen <zj...@apache.org>
Committed: Fri Oct 31 17:43:30 2014 -0700

----------------------------------------------------------------------
 hadoop-yarn-project/CHANGES.txt                 |  3 +++
 .../TestDefaultContainerExecutor.java           | 24 ++++++++++++++++++--
 2 files changed, 25 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/1cd088fd/hadoop-yarn-project/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt
index 0aab364..f9931cf 100644
--- a/hadoop-yarn-project/CHANGES.txt
+++ b/hadoop-yarn-project/CHANGES.txt
@@ -829,6 +829,9 @@ Release 2.6.0 - UNRELEASED
     YARN-2707. Potential null dereference in FSDownload (Gera Shegalov via
     jlowe)
 
+    YARN-2711. Fixed TestDefaultContainerExecutor#testContainerLaunchError failure on
+    Windows. (Varun Vasudev via zjshen)
+
 Release 2.5.1 - 2014-09-05
 
   INCOMPATIBLE CHANGES

http://git-wip-us.apache.org/repos/asf/hadoop/blob/1cd088fd/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestDefaultContainerExecutor.java
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestDefaultContainerExecutor.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestDefaultContainerExecutor.java
index bf01fb7..c669047 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestDefaultContainerExecutor.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestDefaultContainerExecutor.java
@@ -27,10 +27,12 @@ import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.doAnswer;
 import static org.junit.Assert.assertTrue;
 
+import java.io.BufferedWriter;
 import java.io.DataOutputStream;
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
+import java.io.FileWriter;
 import java.io.InputStream;
 import java.io.IOException;
 import java.io.LineNumberReader;
@@ -59,6 +61,7 @@ import org.apache.hadoop.io.DataInputBuffer;
 import org.apache.hadoop.io.DataOutputBuffer;
 import org.apache.hadoop.security.Credentials;
 import org.apache.hadoop.util.Progressable;
+import org.apache.hadoop.util.Shell;
 import org.apache.hadoop.yarn.api.records.ApplicationAttemptId;
 import org.apache.hadoop.yarn.api.records.ApplicationId;
 import org.apache.hadoop.yarn.api.records.ContainerId;
@@ -118,7 +121,7 @@ public class TestDefaultContainerExecutor {
   }
   */
 
-  private static final Path BASE_TMP_PATH = new Path("target",
+  private static Path BASE_TMP_PATH = new Path("target",
       TestDefaultContainerExecutor.class.getSimpleName());
 
   @AfterClass
@@ -217,6 +220,12 @@ public class TestDefaultContainerExecutor {
   public void testContainerLaunchError()
       throws IOException, InterruptedException {
 
+    if (Shell.WINDOWS) {
+      BASE_TMP_PATH =
+          new Path(new File("target").getAbsolutePath(),
+            TestDefaultContainerExecutor.class.getSimpleName());
+    }
+
     Path localDir = new Path(BASE_TMP_PATH, "localDir");
     List<String> localDirs = new ArrayList<String>();
     localDirs.add(localDir.toString());
@@ -226,7 +235,7 @@ public class TestDefaultContainerExecutor {
 
     Configuration conf = new Configuration();
     conf.set(CommonConfigurationKeys.FS_PERMISSIONS_UMASK_KEY, "077");
-       conf.set(YarnConfiguration.NM_LOCAL_DIRS, localDir.toString());
+    conf.set(YarnConfiguration.NM_LOCAL_DIRS, localDir.toString());
     conf.set(YarnConfiguration.NM_LOG_DIRS, logDir.toString());
     
     FileContext lfs = FileContext.getLocalFSFileContext(conf);
@@ -284,6 +293,17 @@ public class TestDefaultContainerExecutor {
 
       Path scriptPath = new Path("file:///bin/echo");
       Path tokensPath = new Path("file:///dev/null");
+      if (Shell.WINDOWS) {
+        File tmp = new File(BASE_TMP_PATH.toString(), "test_echo.cmd");
+        BufferedWriter output = new BufferedWriter(new FileWriter(tmp));
+        output.write("Exit 1");
+        output.write("Echo No such file or directory 1>&2");
+        output.close();
+        scriptPath = new Path(tmp.getAbsolutePath());
+        tmp = new File(BASE_TMP_PATH.toString(), "tokens");
+        tmp.createNewFile();
+        tokensPath = new Path(tmp.getAbsolutePath());
+      }
       Path workDir = localDir;
       Path pidFile = new Path(workDir, "pid.txt");