This is an automated email from the ASF dual-hosted git repository. ayushsaxena pushed a commit to branch branch-3.3 in repository https://gitbox.apache.org/repos/asf/hadoop.git
commit 408c5c53b10b157aad8b107c343fbd1ebd8f6321 Author: fanluoo <958909...@qq.com> AuthorDate: Sat Apr 29 19:54:56 2023 +0800 HDFS-16897. Fix abundant Broken pipe exception in BlockSender (#5329). Contributed by fanluo. Signed-off-by: Ayush Saxena <ayushsax...@apache.org> --- .../java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java index 105e1e86c2e..f2724d062ce 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java @@ -653,8 +653,12 @@ class BlockSender implements java.io.Closeable { if (ioem.startsWith(EIO_ERROR)) { throw new DiskFileCorruptException("A disk IO error occurred", e); } + String causeMessage = e.getCause() != null ? e.getCause().getMessage() : ""; + causeMessage = causeMessage != null ? causeMessage : ""; if (!ioem.startsWith("Broken pipe") - && !ioem.startsWith("Connection reset")) { + && !ioem.startsWith("Connection reset") + && !causeMessage.startsWith("Broken pipe") + && !causeMessage.startsWith("Connection reset")) { LOG.error("BlockSender.sendChunks() exception: ", e); datanode.getBlockScanner().markSuspectBlock( ris.getVolumeRef().getVolume().getStorageID(), block); --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org