[ https://issues.apache.org/jira/browse/HDFS-7439?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14343206#comment-14343206 ]
Hudson commented on HDFS-7439: ------------------------------ SUCCESS: Integrated in Hadoop-Hdfs-trunk-Java8 #111 (See [https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/111/]) HDFS-7439. Add BlockOpResponseProto's message to the exception messages. Contributed by Takanobu Asanuma (szetszwo: rev 67ed59348d638d56e6752ba2c71fdcd69567546d) * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/balancer/Dispatcher.java * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/DataTransferProtoUtil.java * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/RemoteBlockReader2.java * hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataXceiver.java * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java > Add BlockOpResponseProto's message to DFSClient's exception message > ------------------------------------------------------------------- > > Key: HDFS-7439 > URL: https://issues.apache.org/jira/browse/HDFS-7439 > Project: Hadoop HDFS > Issue Type: Improvement > Components: balancer & mover, datanode, hdfs-client > Reporter: Ming Ma > Assignee: Takanobu Asanuma > Priority: Minor > Fix For: 2.7.0 > > Attachments: HDFS-7439.1.patch, HDFS-7439.2.patch, HDFS-7439.3.patch > > > When (BlockOpResponseProto#getStatus() != SUCCESS), it helps with debugging > if DFSClient can add BlockOpResponseProto's message to the exception message > applications will get. For example, instead of > {noformat} > throw new IOException("Got error for OP_READ_BLOCK, self=" > + peer.getLocalAddressString() + ", remote=" > + peer.getRemoteAddressString() + ", for file " + file > + ", for pool " + block.getBlockPoolId() + " block " > + block.getBlockId() + "_" + block.getGenerationStamp()); > {noformat} > It could be, > {noformat} > throw new IOException("Got error for OP_READ_BLOCK, self=" > + peer.getLocalAddressString() + ", remote=" > + peer.getRemoteAddressString() + ", for file " + file > + ", for pool " + block.getBlockPoolId() + " block " > + block.getBlockId() + "_" + block.getGenerationStamp() > + ", status message " + status.getMessage()); > {noformat} > We might want to check out all the references to BlockOpResponseProto in > DFSClient. -- This message was sent by Atlassian JIRA (v6.3.4#6332)