John Blum created GEODE-10036:
---------------------------------
Summary: Joining Locators in a cluster is not possible on Java 17
Key: GEODE-10036
URL: https://issues.apache.org/jira/browse/GEODE-10036
Project: Geode
Issue Type: Bug
Affects Versions: 1.14.3
Reporter: John Blum
When trying to add multiple _Locators_ to the same cluster, particularly when
"_direct_" {{ByteBuffers}} are used, the following Exception is thrown:
{code:java}
Caused by: org.apache.geode.SystemConnectException: One or more peers generated
exceptions during connection attempt
at
org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1634)
at
org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:361)
at
org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:756)
at
org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:132)
at
org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3011)
at
org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:282)
at
org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:746)
at
org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:392)
at
org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716)
at
org.springframework.data.gemfire.LocatorFactoryBean.init(LocatorFactoryBean.java:120)
... 44 more
Caused by: 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:101)
at
org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:258)
at
org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:318)
at
org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:187)
at
org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:525)
at
org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:348)
at
org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:293)
at
org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2064)
at
org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1991)
at
org.apache.geode.distributed.internal.StartupOperation.sendStartupMessage(StartupOperation.java:75)
at
org.apache.geode.distributed.internal.ClusterDistributionManager.sendStartupMessage(ClusterDistributionManager.java:1631)
... 56 more
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 @2e0fa5d3
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.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)
... 69 more
{code}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)