[
https://issues.apache.org/jira/browse/GEODE-6318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16751368#comment-16751368
]
Bruce Schuchardt commented on GEODE-6318:
-----------------------------------------
This was on the develop branch with SHA f2a124863e294d79e029857893d26bd7e7f69172
> 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
> Priority: Major
>
> 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)