Description
Due to Java 16 tightened restrictions, Apache Geode fails to run on a Java 16 Runtime (JRE).
Exceptions like the following are thrown:
- 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
And...
2021-05-10 15:10:25,458 ERROR xecutors.LoggingUncaughtExceptionHandler: 92 - Uncaught exception in thread Thread[LonerDistributionManagerThread8,5,main] java.lang.reflect.InaccessibleObjectException: Unable to make field private static final jdk.internal.access.JavaLangAccess java.util.UUID.jla accessible: module java.base does not "opens java.util" to unnamed module @7960847b 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.Field.checkCanSetAccessible(Field.java:177) at java.base/java.lang.reflect.Field.setAccessible(Field.java:171) at org.apache.geode.internal.size.ObjectTraverser.buildFieldSet(ObjectTraverser.java:117) at org.apache.geode.internal.size.ObjectTraverser.cacheFieldSet(ObjectTraverser.java:92) at org.apache.geode.internal.size.ObjectTraverser.doSearch(ObjectTraverser.java:65) at org.apache.geode.internal.size.ObjectTraverser.breadthFirstSearch(ObjectTraverser.java:54) at org.apache.geode.internal.size.ObjectGraphSizer.size(ObjectGraphSizer.java:101) at org.apache.geode.internal.size.ReflectionObjectSizer.sizeof(ReflectionObjectSizer.java:76) at org.apache.geode.internal.size.SizeClassOnceObjectSizer.sizeof(SizeClassOnceObjectSizer.java:63) at org.apache.geode.internal.cache.TombstoneService$Tombstone.getSize(TombstoneService.java:398) at org.apache.geode.internal.cache.TombstoneService$TombstoneSweeper.scheduleTombstone(TombstoneService.java:982) at org.apache.geode.internal.cache.TombstoneService.scheduleTombstone(TombstoneService.java:196) at org.apache.geode.internal.cache.LocalRegion.scheduleTombstone(LocalRegion.java:3298) at org.apache.geode.internal.cache.entries.AbstractRegionEntry.makeTombstone(AbstractRegionEntry.java:265) at org.apache.geode.internal.cache.entries.AbstractRegionEntry.destroy(AbstractRegionEntry.java:879) at org.apache.geode.internal.cache.map.RegionMapDestroy.destroyEntry(RegionMapDestroy.java:734) at org.apache.geode.internal.cache.map.RegionMapDestroy.destroyExistingEntry(RegionMapDestroy.java:392) at org.apache.geode.internal.cache.map.RegionMapDestroy.handleExistingRegionEntry(RegionMapDestroy.java:244) at org.apache.geode.internal.cache.map.RegionMapDestroy.destroy(RegionMapDestroy.java:152) at org.apache.geode.internal.cache.AbstractRegionMap.destroy(AbstractRegionMap.java:968) at org.apache.geode.internal.cache.LocalRegion.mapDestroy(LocalRegion.java:6499) at org.apache.geode.internal.cache.LocalRegion.mapDestroy(LocalRegion.java:6473) at org.apache.geode.internal.cache.BucketRegion.basicDestroy(BucketRegion.java:1194) at org.apache.geode.internal.cache.LocalRegion.validatedDestroy(LocalRegion.java:1127) at org.apache.geode.internal.cache.DistributedRegion.validatedDestroy(DistributedRegion.java:940) at org.apache.geode.internal.cache.LocalRegion.destroy(LocalRegion.java:1112) at org.apache.geode.cache.lucene.internal.partition.BucketTargetingMap.remove(BucketTargetingMap.java:59) at org.apache.geode.cache.lucene.internal.filesystem.FileSystem.deleteFile(FileSystem.java:125) at org.apache.geode.cache.lucene.internal.directory.RegionDirectory.deleteFile(RegionDirectory.java:66) at org.apache.lucene.store.LockValidatingDirectoryWrapper.deleteFile(LockValidatingDirectoryWrapper.java:38) at org.apache.lucene.index.IndexFileDeleter.deleteFile(IndexFileDeleter.java:723) at org.apache.lucene.index.IndexFileDeleter.deleteFiles(IndexFileDeleter.java:717) at org.apache.lucene.index.IndexFileDeleter.deleteNewFiles(IndexFileDeleter.java:693) at org.apache.lucene.index.IndexWriter.deleteNewFiles(IndexWriter.java:4965) at org.apache.lucene.index.DocumentsWriter$DeleteNewFilesEvent.process(DocumentsWriter.java:771) at org.apache.lucene.index.IndexWriter.processEvents(IndexWriter.java:5043) at org.apache.lucene.index.IndexWriter.processEvents(IndexWriter.java:5034) at org.apache.lucene.index.IndexWriter.prepareCommitInternal(IndexWriter.java:3019) at org.apache.lucene.index.IndexWriter.commitInternal(IndexWriter.java:3244) at org.apache.lucene.index.IndexWriter.commit(IndexWriter.java:3207) at org.apache.geode.cache.lucene.internal.repository.IndexRepositoryImpl.commit(IndexRepositoryImpl.java:169) at org.apache.geode.cache.lucene.internal.IndexRepositoryFactory.reindexUserDataRegion(IndexRepositoryFactory.java:196) at org.apache.geode.cache.lucene.internal.IndexRepositoryFactory.finishComputingRepository(IndexRepositoryFactory.java:128) at org.apache.geode.cache.lucene.internal.IndexRepositoryFactory.computeIndexRepository(IndexRepositoryFactory.java:66) at org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.computeRepository(PartitionedRepositoryManager.java:151) at org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.lambda$computeRepository$1(PartitionedRepositoryManager.java:170) at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916) at org.apache.geode.cache.lucene.internal.PartitionedRepositoryManager.computeRepository(PartitionedRepositoryManager.java:162) at org.apache.geode.cache.lucene.internal.LuceneBucketListener.lambda$afterPrimary$0(LuceneBucketListener.java:40)