浏览代码

MAPREDUCE-5191. TestQueue#testQueue fails with timeout on Windows. (Contributed by Ivan Mitic)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1484575 13f79535-47bb-0310-9956-ffa450edef68
Hitesh Shah 12 年之前
父节点
当前提交
6517c3f714

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

@@ -141,6 +141,9 @@ Trunk (Unreleased)
     classpath problems and unexpected behavior of symlinks (Chris Nauroth via
     bikas)
 
+    MAPREDUCE-5191. TestQueue#testQueue fails with timeout on Windows. (Ivan
+    Mitic via hitesh)
+
   BREAKDOWN OF HADOOP-8562 SUBTASKS
 
     MAPREDUCE-4739. Some MapReduce tests fail to find winutils.

+ 16 - 2
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/test/java/org/apache/hadoop/mapred/TestQueue.java

@@ -28,8 +28,11 @@ import java.util.Iterator;
 import java.util.Set;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileUtil;
 import org.apache.hadoop.mapreduce.MRConfig;
 import org.apache.hadoop.security.UserGroupInformation;
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Test;
 
 import static junit.framework.Assert.*;
@@ -39,6 +42,18 @@ import static org.mockito.Mockito.*;
  * TestCounters checks the sanity and recoverability of Queue
  */
 public class TestQueue {
+  private static File testDir = new File(System.getProperty("test.build.data",
+      "/tmp"), TestJobConf.class.getSimpleName());
+
+  @Before
+  public void setup() {
+    testDir.mkdirs();
+  }
+
+  @After
+  public void cleanup() {
+    FileUtil.fullyDelete(testDir);
+  }
 
   /**
    * test QueueManager
@@ -217,8 +232,7 @@ public class TestQueue {
  */
   private File writeFile() throws IOException {
 
-    File f = null;
-    f = File.createTempFile("tst", "xml");
+    File f = new File(testDir, "tst.xml");
     BufferedWriter out = new BufferedWriter(new FileWriter(f));
     String properties = "<properties><property key=\"key\" value=\"value\"/><property key=\"key1\" value=\"value1\"/></properties>";
     out.write("<queues>");