You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2017/04/10 18:06:41 UTC

[jira] [Created] (ARROW-801) [JAVA] Provide direct access to underlying buffer memory addresses in consistent way without generating garbage or large amount indirections

Jacques Nadeau created ARROW-801:
------------------------------------

             Summary: [JAVA] Provide direct access to underlying buffer memory addresses in consistent way without generating garbage or large amount indirections
                 Key: ARROW-801
                 URL: https://issues.apache.org/jira/browse/ARROW-801
             Project: Apache Arrow
          Issue Type: Bug
          Components: Java - Vectors
            Reporter: Jacques Nadeau


When working with Arrow vectors recently, we observed a situation where our time was dominated  by calls to getFieldBuffers() to be able to retrieve memory addresses (22s out of 26s total for a piece of code). We should provide a direct mechanism to access this data so we can avoid all the extra indirection and object creation. 

A proposal:
getBitAddress();
getDataAddress();
getOffsetAddress();

These interfaces would be made available at the FieldVector interface and simply throw UnsupportedOperationException where not supported.

Unsupported Operations: 
data for list type
offset for fixed width types
data and offset for struct type
data for union type



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)