Dmitry Werner created IGNITE-28802:
--------------------------------------

             Summary: Fix JmhSqlDmlBenchmark for JDK 17
                 Key: IGNITE-28802
                 URL: https://issues.apache.org/jira/browse/IGNITE-28802
             Project: Ignite
          Issue Type: Task
            Reporter: Dmitry Werner
            Assignee: Dmitry Werner


The launch on JDK 17 fails with an error:
java.lang.ExceptionInInitializerError
at org.apache.ignite.internal.util.IgniteUtils.<clinit>(IgniteUtils.java:534)
at org.apache.ignite.spi.IgniteSpiAdapter.<init>(IgniteSpiAdapter.java:122)
at 
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.<init>(TcpDiscoverySpi.java:232)
at 
org.apache.ignite.internal.benchmarks.jmh.sql.JmhSqlAbstractBenchmark.configuration(JmhSqlAbstractBenchmark.java:98)
at 
org.apache.ignite.internal.benchmarks.jmh.sql.JmhSqlAbstractBenchmark.setup(JmhSqlAbstractBenchmark.java:121)
at 
org.apache.ignite.internal.benchmarks.jmh.sql.JmhSqlDmlBenchmark.setup(JmhSqlDmlBenchmark.java:36)
at 
org.apache.ignite.internal.benchmarks.jmh.sql.jmh_generated.JmhSqlDmlBenchmark_insertDeleteBatch_jmhTest._jmh_tryInit_f_jmhsqldmlbenchmark0_G(JmhSqlDmlBenchmark_insertDeleteBatch_jmhTest.java:448)
at 
org.apache.ignite.internal.benchmarks.jmh.sql.jmh_generated.JmhSqlDmlBenchmark_insertDeleteBatch_jmhTest.insertDeleteBatch_Throughput(JmhSqlDmlBenchmark_insertDeleteBatch_jmhTest.java:71)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)
at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at 
org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:527)
at 
org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:504)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.lang.RuntimeException: java.nio.DirectByteBuffer.address field 
is unavailable.
at org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1659)
at org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1646)
at 
java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at 
org.apache.ignite.internal.util.GridUnsafe.bufferAddressOffset(GridUnsafe.java:1646)
at org.apache.ignite.internal.util.GridUnsafe.<clinit>(GridUnsafe.java:121)
... 20 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 @64bfbc86
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:178)
at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
at org.apache.ignite.internal.util.GridUnsafe$2.run(GridUnsafe.java:1651)
... 24 more


It is necessary to add {{add‑opens}} parameters.



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

Reply via email to