HDFS-8368. Erasure Coding: DFS opening a non-existent file need to be handled properly. Contributed by Rakesh R.
This commit is contained in:
parent
97a2396af6
commit
54d2827522
|
@ -201,3 +201,6 @@
|
|||
|
||||
HDFS-8372. Erasure coding: compute storage type quotas for striped files,
|
||||
to be consistent with HDFS-8327. (Zhe Zhang via jing9)
|
||||
|
||||
HDFS-8368. Erasure Coding: DFS opening a non-existent file need to be
|
||||
handled properly (Rakesh R via zhz)
|
||||
|
|
|
@ -1193,12 +1193,14 @@ public class DFSClient implements java.io.Closeable, RemotePeerFactory,
|
|||
// Get block info from namenode
|
||||
TraceScope scope = getPathTraceScope("newDFSInputStream", src);
|
||||
try {
|
||||
ECSchema schema = getFileInfo(src).getECSchema();
|
||||
if (schema != null) {
|
||||
return new DFSStripedInputStream(this, src, verifyChecksum, schema);
|
||||
} else {
|
||||
return new DFSInputStream(this, src, verifyChecksum);
|
||||
HdfsFileStatus fileInfo = getFileInfo(src);
|
||||
if (fileInfo != null) {
|
||||
ECSchema schema = fileInfo.getECSchema();
|
||||
if (schema != null) {
|
||||
return new DFSStripedInputStream(this, src, verifyChecksum, schema);
|
||||
}
|
||||
}
|
||||
return new DFSInputStream(this, src, verifyChecksum);
|
||||
} finally {
|
||||
scope.close();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue