wzx140 commented on code in PR #36973:
URL: https://github.com/apache/spark/pull/36973#discussion_r906183583
##########
connector/avro/src/main/scala/org/apache/spark/sql/avro/AvroDeserializer.scala:
##########
@@ -195,6 +195,8 @@ private[sql] class AvroDeserializer(
case b: ByteBuffer =>
val bytes = new Array[Byte](b.remaining)
b.get(bytes)
+ // Do not forget to reset the position
+ b.rewind()
Review Comment:
HeapBuffer.get(bytes) puts the data from POS to the end into bytes, and sets
POS as the end. The next call will return empty bytes. You can take a look at
added unit test. The second call of deserializer will return an InternalRow
with empty binary column.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]