[ 
https://issues.apache.org/jira/browse/HDFS-5003?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13712020#comment-13712020
 ] 

Xi Fang commented on HDFS-5003:
-------------------------------

Thanks Chris!
                
> TestNNThroughputBenchmark failed caused by existing directories
> ---------------------------------------------------------------
>
>                 Key: HDFS-5003
>                 URL: https://issues.apache.org/jira/browse/HDFS-5003
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 3.0.0, 1-win, 2.1.0-beta, 1.3.0
>            Reporter: Xi Fang
>            Assignee: Xi Fang
>            Priority: Minor
>             Fix For: 3.0.0, 1-win, 2.1.0-beta, 1.3.0
>
>         Attachments: HADOOP-9739.1.patch, HADOOP-9739.1.trunk.patch
>
>
> This test failed on both Windows and Linux.
> Here is the error information.
> Testcase: testNNThroughput took 36.221 sec
>       Caused an ERROR
> NNThroughputBenchmark: cannot mkdir 
> D:\condor\condor\build\test\dfs\hosts\exclude
> java.io.IOException: NNThroughputBenchmark: cannot mkdir 
> D:\condor\condor\build\test\dfs\hosts\exclude
>       at 
> org.apache.hadoop.hdfs.server.namenode.NNThroughputBenchmark.<init>(NNThroughputBenchmark.java:111)
>       at 
> org.apache.hadoop.hdfs.server.namenode.NNThroughputBenchmark.runBenchmark(NNThroughputBenchmark.java:1168)
>       at 
> org.apache.hadoop.hdfs.server.namenode.TestNNThroughputBenchmark.testNNThroughput(TestNNThroughputBenchmark.java:38)
> This test may not fail for the first run, but will fail for the second one.
> The root cause is in the constructor of NNThroughputBenchmark
> {code}
> NNThroughputBenchmark(Configuration conf) throws IOException, LoginException  
> {
> ...
>      config.set("dfs.hosts.exclude", "${hadoop.tmp.dir}/dfs/hosts/exclude");
>      File excludeFile = new File(config.get("dfs.hosts.exclude", "exclude"));
>      if(! excludeFile.exists()) {
>       if(!excludeFile.getParentFile().mkdirs())
>          throw new IOException("NNThroughputBenchmark: cannot mkdir " + 
> excludeFile);
>      }
>      new FileOutputStream(excludeFile).close();
> {code}
> excludeFile.getParentFile() may already exist, then 
> excludeFile.getParentFile().mkdirs() will return false, which however is not 
> an expected behavior.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to