Bruce Schuchardt created GEODE-6318:
---------------------------------------

             Summary: Cluster configuration service is not stopped when locator 
is stopped
                 Key: GEODE-6318
                 URL: https://issues.apache.org/jira/browse/GEODE-6318
             Project: Geode
          Issue Type: Bug
          Components: management
            Reporter: Bruce Schuchardt


I noticed this exception being thrown in a Locator that was auto-reconnecting 
in the test 

ClusterConfigLocatorRestartDUnitTest.serverRestartsAfterLocatorReconnects

 
{noformat}
[vm0] [warn 2019/01/24 09:03:00.467 PST <Function Execution Processor2> 
tid=0x347] Unable to retrieve the cluster configuration
[vm0] org.apache.geode.distributed.LockServiceDestroyedException: 
<DLockService@1d7f6b25 named __CLUSTER_CONFIG_LS destroyed=true grantorId=null 
grantor=null> has been destroyed
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.generateLockServiceDestroyedException(DLockService.java:203)
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.checkDestroyed(DLockService.java:192)
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.lock(DLockService.java:1236)
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.lock(DLockService.java:1230)
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.lock(DLockService.java:1225)
[vm0] at 
org.apache.geode.distributed.internal.locks.DLockService.lock(DLockService.java:1221)
[vm0] at 
org.apache.geode.distributed.internal.InternalConfigurationPersistenceService.lockSharedConfiguration(InternalConfigurationPersistenceService.java:823)
[vm0] at 
org.apache.geode.distributed.internal.InternalConfigurationPersistenceService.createConfigurationResponse(InternalConfigurationPersistenceService.java:627)
[vm0] at 
org.apache.geode.management.internal.configuration.functions.GetClusterConfigurationFunction.execute(GetClusterConfigurationFunction.java:53)
[vm0] at 
org.apache.geode.internal.cache.MemberFunctionStreamingMessage.process(MemberFunctionStreamingMessage.java:193)
[vm0] at 
org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:367)
[vm0] at 
org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:433)
[vm0] at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[vm0] at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[vm0] at 
org.apache.geode.distributed.internal.ClusterDistributionManager.runUntilShutdown(ClusterDistributionManager.java:956)
[vm0] at 
org.apache.geode.distributed.internal.ClusterDistributionManager.doFunctionExecutionThread(ClusterDistributionManager.java:810)
[vm0] at 
org.apache.geode.internal.logging.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:121)
[vm0] at java.lang.Thread.run(Thread.java:748)

{noformat}
 

It looks like the cluster  configuration service is not stopped when the 
Locator disconnects in preparation for an auto-reconnect.  When the Locator 
finally reopens its location services there is a window of time where it can 
receive a request for the cluster configuration and it uses the old service, 
running into this LockServiceDestroyedException.  When the auto-reconnect 
completes the problem is healed because the auto-reconnect code creates a new 
service.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to