Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
2.6.0
-
None
-
Reviewed
Description
Currently, a DN disconnection for reasons other than connection timeout or refused messages, such as an EOF message as a result of rejection or other network fault, reports in this manner:
WARN org.apache.hadoop.hdfs.DFSClient: Failed to connect to /x.x.x.x:nnnn for block, add to deadNodes and continue. java.io.EOFException: Premature EOF: no length prefix available java.io.EOFException: Premature EOF: no length prefix available at org.apache.hadoop.hdfs.protocol.HdfsProtoUtil.vintPrefixed(HdfsProtoUtil.java:171) at org.apache.hadoop.hdfs.RemoteBlockReader2.newBlockReader(RemoteBlockReader2.java:392) at org.apache.hadoop.hdfs.BlockReaderFactory.newBlockReader(BlockReaderFactory.java:137) at org.apache.hadoop.hdfs.DFSInputStream.getBlockReader(DFSInputStream.java:1103) at org.apache.hadoop.hdfs.DFSInputStream.blockSeekTo(DFSInputStream.java:538) at org.apache.hadoop.hdfs.DFSInputStream.readWithStrategy(DFSInputStream.java:750) at org.apache.hadoop.hdfs.DFSInputStream.read(DFSInputStream.java:794) at org.apache.hadoop.hdfs.DFSInputStream.read(DFSInputStream.java:602)
This is not very clear to a user (warn's at the hdfs-client). It could likely be improved with a more diagnosable message, or at least the direct reason than an EOF.