Skip to content

[Java] InaccessibleObjectException when using JDK16+ #31841

Description

@asfimport

Caused by: java.lang.ExceptionInInitializerError
    at org.apache.arrow.memory.ArrowBuf.setZero(ArrowBuf.java:1161)
    at org.apache.arrow.vector.BaseFixedWidthVector.reAlloc(BaseFixedWidthVector.java:446)
    at org.apache.arrow.vector.BaseFixedWidthVector.handleSafe(BaseFixedWidthVector.java:836)
    at org.apache.arrow.vector.DecimalVector.setSafe(DecimalVector.java:446)
    at net.snowflake.ingest.streaming.internal.ArrowRowBuffer.convertRowToArrow(ArrowRowBuffer.java:698)
    at net.snowflake.ingest.streaming.internal.ArrowRowBuffer.insertRows(ArrowRowBuffer.java:282)
    ... 3 more
Caused by: java.lang.RuntimeException: Failed to initialize MemoryUtil.
    at org.apache.arrow.memory.util.MemoryUtil.(MemoryUtil.java:136)
    ... 9 more
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field long java.nio.Buffer.address accessible: module java.base does not "opens java.nio" to unnamed module @24105dc5
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
    at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:180)
    at java.base/java.lang.reflect.Field.setAccessible(Field.java:174)
    at org.apache.arrow.memory.util.MemoryUtil.(MemoryUtil.java:84)
    ... 9 more

 

It could be work around by adding --add-opens=java.base/java.nio=ALL-UNNAMED to the JVM option, but I'm wondering we could have a better fix

Reporter: ZHUO ZHANG

Related issues:

Note: This issue was originally created as ARROW-16472. Please see the migration documentation for further details.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions