[
https://issues.apache.org/jira/browse/GEODE-4362?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bruce Schuchardt resolved GEODE-4362.
-------------------------------------
Resolution: Fixed
Fix Version/s: 1.5.0
> view preparation throws uncaught RuntimeException
> -------------------------------------------------
>
> Key: GEODE-4362
> URL: https://issues.apache.org/jira/browse/GEODE-4362
> Project: Geode
> Issue Type: Bug
> Components: membership
> Reporter: Bruce Schuchardt
> Assignee: Galen O'Sullivan
> Priority: Major
> Fix For: 1.5.0
>
>
> I put a pause in Services.installView() before the view is passed to the
> Messenger service and ran
> LocatorUDPSecurityDUnitTest.testCollocatedLocatorWithSecurity() and
> encountered a RuntimeException:
> {noformat}
> [vm1] java.lang.RuntimeException: Not found public key for member
> 10.118.20.12(68202)<v31>:32773
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt.getPublicKey(GMSEncrypt.java:178)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger.getPublicKey(JGroupsMessenger.java:1367)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave.addPublicKeysToView(GMSJoinLeave.java:933)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave.sendView(GMSJoinLeave.java:896)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave.prepareView(GMSJoinLeave.java:838)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave$ViewCreator.prepareAndSendView(GMSJoinLeave.java:2385)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave$ViewCreator.sendInitialView(GMSJoinLeave.java:2031)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave$ViewCreator.run(GMSJoinLeave.java:2091)
> [vm1] Caused by: java.lang.NullPointerException
> [vm1] at
> java.security.spec.EncodedKeySpec.<init>(EncodedKeySpec.java:56)
> [vm1] at
> java.security.spec.X509EncodedKeySpec.<init>(X509EncodedKeySpec.java:64)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt.getPublicKey(GMSEncrypt.java:545)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt$PeerEncryptor.<init>(GMSEncrypt.java:377)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt.createPeerEncryptor(GMSEncrypt.java:301)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt.getPeerEncryptor(GMSEncrypt.java:259)
> [vm1] at
> org.apache.geode.distributed.internal.membership.gms.messenger.GMSEncrypt.getPublicKey(GMSEncrypt.java:176)
> [vm1] ... 7 more
> {noformat}
> Since GMSJoinLeave already had the new view installed and JGroupsMessenger
> did not have the new view installed we were unable to find the public key for
> one of the recipients of the new view. View preparation should probably be
> synchronized with view installation so that both aren't done in parallel.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)