Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Problem
-
None
-
None
Description
Geode membership uses setAccessible in a number of places to access jgroups internals.
This will not work on java 16 and later (see: https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16).
A workaround for this bug is to start the jvm with --illegal-access=permit
The places that call setAccessible in membership are:
- org.apache.geode.distributed.internal.membership.gms.messenger.AddressManager#findPingDataMethod (the catch in this method will not catch the RuntimeException thrown by setAccessible)
- org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger#setChannelReceiver
- org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger#start
- org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger#checkForIPv6
- org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger#establishLocalAddress