Github user cloud-fan commented on a diff in the pull request: https://github.com/apache/spark/pull/19222#discussion_r170821710 --- Diff: sql/core/src/main/java/org/apache/spark/sql/vectorized/ArrowColumnVector.java --- @@ -377,8 +379,9 @@ final UTF8String getUTF8String(int rowId) { if (stringResult.isSet == 0) { return null; } else { - return UTF8String.fromAddress(null, - stringResult.buffer.memoryAddress() + stringResult.start, + mb.setAddressAndSize(stringResult.buffer.memoryAddress(), stringResult.buffer.capacity()); --- End diff -- why use `stringResult.buffer.capacity()`? can we do `mb.setAddressAndSize(stringResult.buffer.memoryAddress() + stringResult.start, stringResult.end - stringResult.start)`?
--- --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org