[ 
https://issues.apache.org/jira/browse/IGNITE-28600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry Pavlov updated IGNITE-28600:
-----------------------------------
    Labels: ise  (was: MakeTeamcityGreenAgain ise)

> Fix GridJavaProcess.exec for JDK 17
> -----------------------------------
>
>                 Key: IGNITE-28600
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28600
>             Project: Ignite
>          Issue Type: Test
>            Reporter: Dmitry Werner
>            Assignee: Dmitry Werner
>            Priority: Major
>              Labels: ise
>             Fix For: 2.19
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The tests are failing on the master branch on JDK 17:
> 1. ComputeCacheCollectionsP2PTest
> {code:java}
> IgniteCacheWithIndexingTestSuite: 
> ComputeCacheCollectionsP2PTest.testBinaryArray
> IgniteCacheWithIndexingTestSuite: ComputeCacheCollectionsP2PTest.testArrayList
> IgniteCacheWithIndexingTestSuite: 
> ComputeCacheCollectionsP2PTest.testHashMap{code}
> [https://ci2.ignite.apache.org/buildConfiguration/IgniteTests24Java8_Cache14?tag=JDK_17&branch=%3Cdefault%3E]
> 2. CacheNoValueClassOnServerNodeTest.testNoClassOnServerNode
> [https://ci2.ignite.apache.org/test/-6580085494463487092?currentProjectId=IgniteTests24Java8&branch=%3Cdefault%3E]
> Stack trace of the error (local run):
> {code:java}
> [2026-05-12T15:18:16,716][INFO ][Thread-0][] Client node: Starting test 
> client node.
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node: Unexpected error: 
> java.lang.ExceptionInInitializerError
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node: 
> java.lang.ExceptionInInitializerError
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.IgniteUtils.<clinit>(IgniteUtils.java:550)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.spi.IgniteSpiAdapter.<init>(IgniteSpiAdapter.java:122)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.<init>(TcpDiscoverySpi.java:233)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.tests.p2p.NoValueClassOnServerAbstractClient.<init>(NoValueClassOnServerAbstractClient.java:54)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.tests.p2p.cache.CacheNoValueClassOnServerTestClient.<init>(CacheNoValueClassOnServerTestClient.java:34)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.tests.p2p.cache.CacheNoValueClassOnServerTestClient.main(CacheNoValueClassOnServerTestClient.java:64)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node: Caused by: 
> java.lang.RuntimeException: java.nio.DirectByteBuffer.address field is 
> unavailable.
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1659)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1646)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.GridUnsafe.bufferAddressOffset(GridUnsafe.java:1646)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.GridUnsafe.<clinit>(GridUnsafe.java:121)
> [2026-05-12T15:18:16,857][INFO ][Thread-0][] Client node:     ... 6 more
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node: 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 @78e67e0a
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     at 
> java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     at 
> java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     at 
> org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1651)
> [2026-05-12T15:18:16,858][INFO ][Thread-0][] Client node:     ... 10 more 
> {code}
> All these tests use the GridJavaProcess.exec method, where jvmArgs are 
> configured.
> Therefore, we can add the necessary add-opens parameters to jvmArgs inside 
> this method.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to