What is the plan to support Java 16 for Apache Geode? Timeframe? Running Apache Geode on a Java 16 Runtime produces errors like the following:
- org.apache.geode.InternalGemFireException: unable to retrieve underlying byte buffer - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346) - at org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310) - at org.apache.geode.internal.net.BufferPool.releaseSenderBuffer(BufferPool.java:213) - at org.apache.geode.internal.tcp.MsgStreamer.release(MsgStreamer.java:100) - at org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:256) - at org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306) - at org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182) - at org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511) - at org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346) - at org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291) - at org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2050) - at org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1978) - at org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2015) - at org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083) - at org.apache.geode.distributed.internal.StartupMessage.process(StartupMessage.java:279) - at org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376) - at org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:441) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) - at org.apache.geode.distributed.internal.ClusterOperationExecutors.runUntilShutdown(ClusterOperationExecutors.java:441) - at org.apache.geode.distributed.internal.ClusterOperationExecutors.doWaitingThread(ClusterOperationExecutors.java:410) - at org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119) - at java.base/java.lang.Thread.run(Thread.java:831) - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: module java.base does not "opens java.nio" to unnamed module @40f9161a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343) - ... 22 common frames omitted - 2021-04-30 14:57:13,638 INFO ributed.internal.membership.gms.Services: 606 - received leave request from 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149)<v1>:41001 for 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149)<v1>:41001 - 2021-04-30 14:57:13,640 INFO ributed.internal.membership.gms.Services: 617 - JoinLeave.processMessage(LeaveRequestMessage) invoked. isCoordinator=true; isStopping=false; cancelInProgress=false - 2021-04-30 14:57:13,647 ERROR xecutors.LoggingUncaughtExceptionHandler: 92 - Uncaught exception in thread Thread[P2P message reader for 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149)<v1>:41001 shared unordered uid=1 local port=53039 remote port=64063,10,main] - org.apache.geode.InternalGemFireException: unable to retrieve underlying byte buffer - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346) - at org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310) - at org.apache.geode.internal.net.BufferPool.releaseReceiveBuffer(BufferPool.java:217) - at org.apache.geode.internal.tcp.Connection.releaseInputBuffer(Connection.java:1512) - at org.apache.geode.internal.tcp.Connection.run(Connection.java:1495) - at java.base/java.lang.Thread.run(Thread.java:831) - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: module java.base does not "opens java.nio" to unnamed module @40f9161a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343) - ... 5 common frames omitted - 2021-04-30 14:57:13,651 ERROR xecutors.LoggingUncaughtExceptionHandler: 92 - Uncaught exception in thread Thread[P2P handshake reader@53e57a03-1,5,main] - org.apache.geode.InternalGemFireException: unable to retrieve underlying byte buffer - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346) - at org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310) - at org.apache.geode.internal.net.BufferPool.releaseReceiveBuffer(BufferPool.java:217) - at org.apache.geode.internal.tcp.Connection.releaseInputBuffer(Connection.java:1512) - at org.apache.geode.internal.tcp.Connection.run(Connection.java:1495) - at java.base/java.lang.Thread.run(Thread.java:831) - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: module java.base does not "opens java.nio" to unnamed module @40f9161a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343) - ... 5 common frames omitted Regards, -John