diff --git a/core/trino-spi/src/main/java/io/trino/spi/type/AbstractVariableWidthType.java b/core/trino-spi/src/main/java/io/trino/spi/type/AbstractVariableWidthType.java index 67c20d0dda50..6ab5146ea68e 100644 --- a/core/trino-spi/src/main/java/io/trino/spi/type/AbstractVariableWidthType.java +++ b/core/trino-spi/src/main/java/io/trino/spi/type/AbstractVariableWidthType.java @@ -363,7 +363,13 @@ private static boolean equalOperator( leftBytes = leftVariableSizeSlice; leftOffset = leftVariableSizeOffset; } - return rightRawSlice.equals(rightRawSliceOffset, rightLength, wrappedBuffer(leftBytes, leftOffset, leftLength), 0, leftLength); + return Arrays.equals( + rightRawSlice.byteArray(), + rightRawSlice.byteArrayOffset() + rightRawSliceOffset, + rightRawSlice.byteArrayOffset() + rightRawSliceOffset + rightLength, + leftBytes, + leftOffset, + leftOffset + leftLength); } @ScalarOperator(XX_HASH_64) @@ -396,7 +402,7 @@ private static long xxHash64Operator( bytes = variableSizeSlice; offset = variableSizeOffset; } - return XxHash64.hash(wrappedBuffer(bytes, offset, length)); + return XxHash64.hash(bytes, offset, length); } }