Repository: hadoop Updated Branches: refs/heads/branch-3.1 53528d5ec -> bff223059
HDFS-11719. Arrays.fill() wrong index in BlockSender.readChecksum() exception handling. Contributed by Tao Zhang Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/bff22305 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/bff22305 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/bff22305 Branch: refs/heads/branch-3.1 Commit: bff2230591163296ebfd6726dfcea21bf96468c4 Parents: 53528d5 Author: Mingliang Liu <[email protected]> Authored: Tue Sep 18 10:20:15 2018 -0700 Committer: Mingliang Liu <[email protected]> Committed: Tue Sep 18 10:40:16 2018 -0700 ---------------------------------------------------------------------- .../org/apache/hadoop/hdfs/server/datanode/BlockSender.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/bff22305/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockSender.java ---------------------------------------------------------------------- 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 268007f..bff47fa 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 @@ -682,16 +682,17 @@ class BlockSender implements java.io.Closeable { + " at offset " + offset + " for block " + block, e); ris.closeChecksumStream(); if (corruptChecksumOk) { - if (checksumOffset < checksumLen) { + if (checksumLen > 0) { // Just fill the array with zeros. - Arrays.fill(buf, checksumOffset, checksumLen, (byte) 0); + Arrays.fill(buf, checksumOffset, checksumOffset + checksumLen, + (byte) 0); } } else { throw e; } } } - + /** * Compute checksum for chunks and verify the checksum that is read from * the metadata file is correct. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
