New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ARROW-6464: [Java] Refactor FixedSizeListVector#splitAndTransfer with slice API #5293
Conversation
Codecov Report
@@ Coverage Diff @@
## master #5293 +/- ##
=========================================
Coverage ? 89.81%
=========================================
Files ? 697
Lines ? 105908
Branches ? 0
=========================================
Hits ? 95116
Misses ? 10792
Partials ? 0 Continue to review full report at Codecov.
|
java/vector/src/main/java/org/apache/arrow/vector/complex/FixedSizeListVector.java
Outdated
Show resolved
Hide resolved
java/vector/src/main/java/org/apache/arrow/vector/complex/FixedSizeListVector.java
Outdated
Show resolved
Hide resolved
@jacques-n where you going to take another look at this? |
@jacques-n ping? |
LGTM. However, I would suggest to add as many tests as possible to cover exhaustive set of corner cases with validity transfer. In the past there were so many boundary cases that were found as bugs and were incredibly hard to debug/reproduce. It would be great if you can do that in this or follow-up PR. |
Sure, I could do this in a follow-up PR, thanks! |
Sorry LFGTM was a typo. |
… slice API (apache#5293) * ARROW-6464: [Java] Refactor FixedSizeListVector#splitAndTransfer with slice API * replace assert with Preconditions * simplify length compute
… slice API (apache#5293) * ARROW-6464: [Java] Refactor FixedSizeListVector#splitAndTransfer with slice API * replace assert with Preconditions * simplify length compute
… slice API (apache#5293) * ARROW-6464: [Java] Refactor FixedSizeListVector#splitAndTransfer with slice API * replace assert with Preconditions * simplify length compute
Related to ARROW-6464.
Currently FixedSizeListVector#splitAndTransfer actually use copyValueSafe which has memory copy, we should use slice API instead.
Meanwhile, splitAndTransfer in all classes should position index check at beginning.