Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-801

[JAVA] Provide direct access to underlying buffer memory addresses in consistent way without generating garbage or large amount indirections

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.7.0
    • Java
    • None

    Description

      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

      Attachments

        Activity

          People

            siddteotia Siddharth Teotia
            jnadeau Jacques Nadeau
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: