-
Notifications
You must be signed in to change notification settings - Fork 784
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
make sure that only concat preallocates buffers #382
Conversation
Codecov Report
@@ Coverage Diff @@
## master #382 +/- ##
==========================================
- Coverage 82.61% 82.57% -0.05%
==========================================
Files 162 162
Lines 44228 44280 +52
==========================================
+ Hits 36538 36563 +25
- Misses 7690 7717 +27
Continue to review full report at Codecov.
|
Thanks @ritchie46 . My small concerns with this PR:
I left some ideas as a comment on the issue |
@jorgecarleitao I implemented your proposal from #347. As we now need to define an For now, only the |
@jorgecarleitao what is the status of this one? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go: this is a solid improvement to me.
* MutableArrayData::with_capacities * better pattern matching * add binary capacities * add list child data * add struct capacities * add panic for dictionary type * change dictionary capacity enum variant
Included in #411 cherry pick |
…se (#411) * Reduce memory usage of concat (large)utf8 (#348) * reduce memory needed for concat * reuse code for str allocation buffer * make sure that only concat preallocates buffers (#382) * MutableArrayData::with_capacities * better pattern matching * add binary capacities * add list child data * add struct capacities * add panic for dictionary type * change dictionary capacity enum variant Co-authored-by: Ritchie Vink <[email protected]>
Which issue does this PR close?
Partial fix for #347. In #348 @jorgecarleitao pointed out that the memory savings don't work for the
filter
and thezip
kernel.This PR restores the implementation for those two kernels, and keeps the new
preallocation
for theconcat
kernel.This is achieved by create a builder pattern for
MutableArrayData
. This way we don't break the API, and we may choose topreallocate
buffers.Could you take a look at this @jorgecarleitao ?
Are there any user-facing changes?
There is an builder pattern struct for
MutableArrayData
.If there are any breaking changes to public APIs, please add the
breaking change
label.No