alamb opened a new issue #207:
URL: https://github.com/apache/arrow-rs/issues/207


   *Note*: migrated from original JIRA: 
https://issues.apache.org/jira/browse/ARROW-12223
   
   ArrayData implementations seems to share close structure fields accross 
languages, but their usage is not consistent accross implementation.
   
    
   
   Example using ListArray's offsets buffer, in C++, Rust and JavaScript 
implementation:
   
    - C++: offset's buffer is the second buffer (validity bitmap is first 
buffer, and buffers are laid in a type-dependant way) 
https://github.com/apache/arrow/blob/master/cpp/src/arrow/array/array_nested.cc#L189
   
    - Rust: offset's buffer is the first buffer (validity bitmap is not part of 
the collection, and buffers are laid in a type-dependant way) 
https://github.com/apache/arrow/blob/master/rust/arrow/src/array/array_list.rs#L235
   
    - JavaScript: offset's buffer is the first buffer (they have fixed 
position) 
[https://github.com/apache/arrow/blob/8e43f23dcc6a9e630516228f110c48b64d13cec6/js/src/data.ts#L125]
   
    
   
   Note that we have the same inconsistency for validity and data buffers.
   
    
   
   This is important in my project because I would like to transport buffers 
list accross technologies, and ArrayData seemed the easiest structure to 
transport.


-- 
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.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to