Frank Wong created HUDI-4285:
--------------------------------
Summary: ByteBuffer forget to rewind after get in AvroDeserializer
Key: HUDI-4285
URL: https://issues.apache.org/jira/browse/HUDI-4285
Project: Apache Hudi
Issue Type: Bug
Reporter: Frank Wong
{code:java}
case (BYTES, BinaryType) => (updater, ordinal, value) =>
val bytes = value match {
case b: ByteBuffer =>
val bytes = new Array[Byte](b.remaining)
b.get(bytes)
// Do not forget to reset the position
b.rewind()
bytes
case b: Array[Byte] => b
case other => throw new RuntimeException(s"$other is not a valid avro
binary.")
}
updater.set(ordinal, bytes) {code}
After Avro data is converted to InternalRow, there will be redundant position
in ByteBuffer type caused by ByteBuffer#get
--
This message was sent by Atlassian Jira
(v8.20.7#820007)