RawLocalFileSystem.mkdirs does not throw IOException when it should?
--------------------------------------------------------------------
Key: HADOOP-6501
URL: https://issues.apache.org/jira/browse/HADOOP-6501
Project: Hadoop Common
Issue Type: Bug
Components: fs
Affects Versions: 0.20.1
Environment: Fedora, Java 1.6.0_17, hadoop 20.1
Reporter: robert Cook
Priority: Minor
public boolean mkdirs(Path f) throws IOException {
Path parent = f.getParent();
File p2f = pathToFile(f);
return (parent == null || mkdirs(parent)) &&
(p2f.mkdir() || p2f.isDirectory());
}
none of the methods called throw IOException
yet FileSystemContract
BaseTest.testMkdirsFailsForSubdirectoryOfExistingFile fails
createFile(path("/test/hadoop/file"));
Path testSubDir = path("/test/hadoop/file/subdir");
try {
fs.mkdirs(testSubDir); //<---------returns false instead of throwing
exception
fail("Should throw IOException.");
} catch (IOException e) {
// expected
}
--------------------------------------
further UNIX mkdir operates on a path argument. why does hadoop mkdir create
directories in the path one at a time???
NOTE that a permission or other failure leaves a garbage partially-completed
path in the current hadoop impl.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.