This is an automated email from the ASF dual-hosted git repository. szetszwo pushed a commit to branch revert-2640-fix-checksum-2 in repository https://gitbox.apache.org/repos/asf/ozone.git
commit f3853095f07b353b0d915a90288c442f3beba53b Author: Tsz-Wo Nicholas Sze <[email protected]> AuthorDate: Wed Sep 15 17:21:55 2021 +0800 Revert "HDDS-5742. [Ozone-Streaming] Avoid unnecessary Bytebuffer conversions (#2640)" This reverts commit fe15324d4c7c445a5139d39e92a67f3c11c67a0c. --- .../apache/hadoop/hdds/scm/storage/BlockDataStreamOutput.java | 3 ++- .../src/main/java/org/apache/hadoop/ozone/common/Checksum.java | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/hadoop-hdds/client/src/main/java/org/apache/hadoop/hdds/scm/storage/BlockDataStreamOutput.java b/hadoop-hdds/client/src/main/java/org/apache/hadoop/hdds/scm/storage/BlockDataStreamOutput.java index c69af90..d0419fa 100644 --- a/hadoop-hdds/client/src/main/java/org/apache/hadoop/hdds/scm/storage/BlockDataStreamOutput.java +++ b/hadoop-hdds/client/src/main/java/org/apache/hadoop/hdds/scm/storage/BlockDataStreamOutput.java @@ -485,7 +485,8 @@ public class BlockDataStreamOutput implements ByteBufferStreamOutput { throws IOException { final int effectiveChunkSize = buf.remaining(); final long offset = chunkOffset.getAndAdd(effectiveChunkSize); - ChecksumData checksumData = checksum.computeChecksum(buf); + ChecksumData checksumData = + checksum.computeChecksum(buf.asReadOnlyBuffer()); ChunkInfo chunkInfo = ChunkInfo.newBuilder() .setChunkName(blockID.get().getLocalID() + "_chunk_" + ++chunkIndex) .setOffset(offset) diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/common/Checksum.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/common/Checksum.java index 67e5d47..76f84c4 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/common/Checksum.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/common/Checksum.java @@ -139,10 +139,6 @@ public class Checksum { */ public ChecksumData computeChecksum(ByteBuffer data) throws OzoneChecksumException { - if (checksumType == ChecksumType.NONE) { - // Since type is set to NONE, we do not need to compute the checksums - return new ChecksumData(checksumType, bytesPerChecksum); - } if (!data.isReadOnly()) { data = data.asReadOnlyBuffer(); } @@ -158,6 +154,11 @@ public class Checksum { public ChecksumData computeChecksum(ChunkBuffer data) throws OzoneChecksumException { + if (checksumType == ChecksumType.NONE) { + // Since type is set to NONE, we do not need to compute the checksums + return new ChecksumData(checksumType, bytesPerChecksum); + } + final Function<ByteBuffer, ByteString> function; try { function = Algorithm.valueOf(checksumType).newChecksumFunction(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
