|
@@ -64,6 +64,7 @@ import static org.apache.hadoop.fs.impl.PathCapabilitiesSupport.validatePathCapa
|
|
|
public class RawLocalFileSystem extends FileSystem {
|
|
|
static final URI NAME = URI.create("file:///");
|
|
|
private Path workingDir;
|
|
|
+ private long defaultBlockSize;
|
|
|
// Temporary workaround for HADOOP-9652.
|
|
|
private static boolean useDeprecatedFileStatus = true;
|
|
|
|
|
@@ -100,6 +101,7 @@ public class RawLocalFileSystem extends FileSystem {
|
|
|
public void initialize(URI uri, Configuration conf) throws IOException {
|
|
|
super.initialize(uri, conf);
|
|
|
setConf(conf);
|
|
|
+ defaultBlockSize = getDefaultBlockSize(new Path(uri));
|
|
|
}
|
|
|
|
|
|
/*******************************************************
|
|
@@ -518,7 +520,12 @@ public class RawLocalFileSystem extends FileSystem {
|
|
|
}
|
|
|
return new FileStatus[] {
|
|
|
new DeprecatedRawLocalFileStatus(localf,
|
|
|
- getDefaultBlockSize(f), this) };
|
|
|
+ defaultBlockSize, this) };
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean exists(Path f) throws IOException {
|
|
|
+ return pathToFile(f).exists();
|
|
|
}
|
|
|
|
|
|
protected boolean mkOneDir(File p2f) throws IOException {
|
|
@@ -663,7 +670,7 @@ public class RawLocalFileSystem extends FileSystem {
|
|
|
File path = pathToFile(f);
|
|
|
if (path.exists()) {
|
|
|
return new DeprecatedRawLocalFileStatus(pathToFile(f),
|
|
|
- getDefaultBlockSize(f), this);
|
|
|
+ defaultBlockSize, this);
|
|
|
} else {
|
|
|
throw new FileNotFoundException("File " + f + " does not exist");
|
|
|
}
|
|
@@ -1051,7 +1058,7 @@ public class RawLocalFileSystem extends FileSystem {
|
|
|
private FileStatus getNativeFileLinkStatus(final Path f,
|
|
|
boolean dereference) throws IOException {
|
|
|
checkPath(f);
|
|
|
- Stat stat = new Stat(f, getDefaultBlockSize(f), dereference, this);
|
|
|
+ Stat stat = new Stat(f, defaultBlockSize, dereference, this);
|
|
|
FileStatus status = stat.getFileStatus();
|
|
|
return status;
|
|
|
}
|