HDFS-13586. Fsync fails on directories on Windows. Contributed by Lukas Majercack.
This commit is contained in:
parent
2f2dd22aad
commit
8783613696
@ -414,6 +414,13 @@ public static void fsync(File fileToSync) throws IOException {
|
|||||||
"File/Directory " + fileToSync.getAbsolutePath() + " does not exist");
|
"File/Directory " + fileToSync.getAbsolutePath() + " does not exist");
|
||||||
}
|
}
|
||||||
boolean isDir = fileToSync.isDirectory();
|
boolean isDir = fileToSync.isDirectory();
|
||||||
|
|
||||||
|
// HDFS-13586, FileChannel.open fails with AccessDeniedException
|
||||||
|
// for any directory, ignore.
|
||||||
|
if (isDir && Shell.WINDOWS) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// If the file is a directory we have to open read-only, for regular files
|
// If the file is a directory we have to open read-only, for regular files
|
||||||
// we must open r/w for the fsync to have an effect. See
|
// we must open r/w for the fsync to have an effect. See
|
||||||
// http://blog.httrack.com/blog/2013/11/15/
|
// http://blog.httrack.com/blog/2013/11/15/
|
||||||
|
Loading…
Reference in New Issue
Block a user