HDDS-7161. Make Checksum.int2ByteString() zero-copy. (#3709)
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 76f84c4..bb4b5e3 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
@@ -32,6 +32,7 @@
import com.google.common.primitives.Ints;
import org.apache.hadoop.ozone.common.utils.BufferUtils;
import org.apache.ratis.thirdparty.com.google.protobuf.ByteString;
+import org.apache.ratis.thirdparty.com.google.protobuf.UnsafeByteOperations;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -60,7 +61,7 @@
}
public static ByteString int2ByteString(int n) {
- return ByteString.copyFrom(Ints.toByteArray(n));
+ return UnsafeByteOperations.unsafeWrap(Ints.toByteArray(n));
}
private static Function<ByteBuffer, ByteString> newChecksumByteBufferFunction(