mbrobbel commented on PR #5176:
URL: https://github.com/apache/arrow-rs/pull/5176#issuecomment-1843146392

   > > Unless I'm mistaken this is following the Arrow spec
   > 
   > I'm not aware of a part of the arrow specification calling for a pointer 
width type, i.e. `usize` or `isize`, nor an unsigned 128-bit integer?
   
   The physical fixed-size primitive memory layout supports: ["values each 
having the same physical slot width typically measured in 
bytes"](https://github.com/apache/arrow/blob/92723f34f8df40b35e5840e61011c00766808014/docs/source/format/Columnar.rst?plain=1#L243-L244).
 `u128`, `isize`, `usize` (and `[T: ArrowNativeType; N]`) are types for values 
each having the same physical slot width, meaning that custom logical types 
should be able to use them in that physical memory layout I think.
   
   For example, consider a custom UUID extension type. It could be stored in a 
fixed-size list layout (as suggested in the docs), but it's also valid to store 
it in a fixed-size primitive layout (using `u128`s).


-- 
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: [email protected]

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

Reply via email to