You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "jhorstmann (via GitHub)" <gi...@apache.org> on 2023/03/27 16:32:53 UTC

[GitHub] [arrow-rs] jhorstmann opened a new issue, #3960: Add a feature to allow creating Buffers from Vec with custom allocators (allocator_api)

jhorstmann opened a new issue, #3960:
URL: https://github.com/apache/arrow-rs/issues/3960

   **Is your feature request related to a problem or challenge? Please describe what you are trying to do.**
   
   in #3920 and #3917 support was added to to create buffers from standard Rust vectors. The currently instable `allocator_api` feature extends `Vec` to support custom allocators, using functions such as [`new_in`](https://doc.rust-lang.org/std/vec/struct.Vec.html#method.new_in). In our product we are using such custom allocators to track the memory usage of individual queries. I'd like to add a similarly named feature to arrow-rs which would generalize the `Buffer::from_vec` and `MutableBuffer::from_vec` functions.
   
   **Describe the solution you'd like**
   
    - Add a feature named `allocator-api` to `arrow-buffer`
    - If that feature is active, a different impl of `from_vec` would be enabled (via cfg attribute), which has a generic parameter for the allocator
    - `Deallocation::Standard` would additionally store the allocator (note the default `Global` allocator is zero-sized)
    - The feature would require a nightly rust compiler, just as the feature of the standard library
   
   **Describe alternatives you've considered**
   
   Something similar can be achieved using `Buffer::from_custom_allocation` but requires unsafe and dealing with pointers.
   
   **Additional context**
   


-- 
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: github-unsubscribe@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org