Browse Source

MAPREDUCE-5360. TestMRJobClient fails on Windows due to path format. Contributed by Chuan Liu.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1500194 13f79535-47bb-0310-9956-ffa450edef68
Chris Nauroth 12 years ago
parent
commit
e01cbdac25

+ 3 - 0
hadoop-mapreduce-project/CHANGES.txt

@@ -612,6 +612,9 @@ Release 2.1.0-beta - 2013-07-02
     MAPREDUCE-5357. Job staging directory owner checking could fail on Windows.
     (Chuan Liu via cnauroth)
 
+    MAPREDUCE-5360. TestMRJobClient fails on Windows due to path format.
+    (Chuan Liu via cnauroth)
+
     MAPREDUCE-5291. Change MR App to use updated property names in
     container-log4j.properties. (Zhijie Shen via sseth)
 

+ 13 - 4
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/java/org/apache/hadoop/mapreduce/TestMRJobClient.java

@@ -211,6 +211,10 @@ public class TestMRJobClient extends ClusterMapReduceTestCase {
     job.setPriority(JobPriority.NORMAL);
 
     File fcon = File.createTempFile("config", ".xml");
+    FileSystem localFs = FileSystem.getLocal(conf);
+    String fconUri = new Path(fcon.getAbsolutePath())
+        .makeQualified(localFs.getUri(), localFs.getWorkingDirectory()).toUri()
+        .toString();
 
     job.getConfiguration().writeXml(new FileOutputStream(fcon));
     ByteArrayOutputStream out = new ByteArrayOutputStream();
@@ -220,7 +224,7 @@ public class TestMRJobClient extends ClusterMapReduceTestCase {
     
     
     exitCode = runTool(conf, jc,
-        new String[] { "-submit", "file://" + fcon.getAbsolutePath() }, out);
+        new String[] { "-submit", fconUri }, out);
     assertEquals("Exit code", 0, exitCode);
     String answer = new String(out.toByteArray());
     // in console was written
@@ -335,13 +339,18 @@ public class TestMRJobClient extends ClusterMapReduceTestCase {
     CLI jc = createJobClient();
     ByteArrayOutputStream out = new ByteArrayOutputStream();
     File f = new File("src/test/resources/job_1329348432655_0001-10.jhist");
+    FileSystem localFs = FileSystem.getLocal(conf);
+    String historyFileUri = new Path(f.getAbsolutePath())
+        .makeQualified(localFs.getUri(), localFs.getWorkingDirectory()).toUri()
+        .toString();
+ 
     // bad command
-    int exitCode = runTool(conf, jc, new String[] { "-history", "pul",
-        "file://" + f.getAbsolutePath() }, out);
+    int exitCode = runTool(conf, jc, new String[] { "-history", "pul", 
+        historyFileUri }, out);
     assertEquals("Exit code", -1, exitCode);
 
     exitCode = runTool(conf, jc, new String[] { "-history", "all",
-        "file://" + f.getAbsolutePath() }, out);
+        historyFileUri }, out);
     assertEquals("Exit code", 0, exitCode);
     String line;
     BufferedReader br = new BufferedReader(new InputStreamReader(