[ https://issues.apache.org/jira/browse/GEODE-1971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15645572#comment-15645572 ]
ASF subversion and git services commented on GEODE-1971: -------------------------------------------------------- Commit 02d962c20830e2d35347af3cc718eb3ccb3a40f4 in incubator-geode's branch refs/heads/develop from [~dschneider] [ https://git-wip-us.apache.org/repos/asf?p=incubator-geode.git;h=02d962c ] GEODE-1971: fix shutDownAll hang changed to an AtomicBoolean, remove cache sync on addPartitionedRegion and requiresNotificationFromPR > Hang in node simultaneously creating and shutting down with shutdownAll > ----------------------------------------------------------------------- > > Key: GEODE-1971 > URL: https://issues.apache.org/jira/browse/GEODE-1971 > Project: Geode > Issue Type: Bug > Components: core, persistence > Reporter: Bruce Schuchardt > Assignee: Darrel Schneider > > A new member of the distributed system was in the middle of creating its > cache when it received a shutdownAll request. Due to lock inversion between > the two threads performing these operations the shutdownAll hung. > The two threads were in this state: > {noformat} > "Pooled Message Processor 2": > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:1966) > - waiting to lock <0x00000000f730a958> (a java.lang.Class for > com.gemstone.gemfire.internal.cache.GemFireCacheImpl) > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.shutDownAll(GemFireCacheImpl.java:1662) > - locked <0x00000000f730aa28> (a > com.gemstone.gemfire.internal.cache.GemFireCacheImpl) > at > com.gemstone.gemfire.internal.admin.remote.ShutdownAllRequest.createResponse(ShutdownAllRequest.java:175) > at > com.gemstone.gemfire.internal.admin.remote.AdminRequest.process(AdminRequest.java:139) > at > com.gemstone.gemfire.internal.admin.remote.ShutdownAllRequest.process(ShutdownAllRequest.java:134) > at > com.gemstone.gemfire.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:378) > at > com.gemstone.gemfire.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:449) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at > com.gemstone.gemfire.distributed.internal.DistributionManager.runUntilShutdown(DistributionManager.java:603) > at > com.gemstone.gemfire.distributed.internal.DistributionManager$4$1.run(DistributionManager.java:862) > at java.lang.Thread.run(Thread.java:745) > "vm_8_thr_14_dataStore5_client-07_29751": > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.initializePdxRegistry(GemFireCacheImpl.java:1356) > - waiting to lock <0x00000000f730aa28> (a > com.gemstone.gemfire.internal.cache.GemFireCacheImpl) > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.initializeDeclarativeCache(GemFireCacheImpl.java:1297) > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1123) > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.basicCreate(GemFireCacheImpl.java:764) > - locked <0x00000000f730a958> (a java.lang.Class for > com.gemstone.gemfire.internal.cache.GemFireCacheImpl) > at > com.gemstone.gemfire.internal.cache.GemFireCacheImpl.create(GemFireCacheImpl.java:751) > at > com.gemstone.gemfire.cache.CacheFactory.create(CacheFactory.java:181) > - locked <0x00000000f731be40> (a java.lang.Class for > com.gemstone.gemfire.cache.CacheFactory) > at > com.gemstone.gemfire.cache.CacheFactory.create(CacheFactory.java:231) > - locked <0x00000000f731be40> (a java.lang.Class for > com.gemstone.gemfire.cache.CacheFactory) > at > hydra.CacheVersionHelper.configureAndCreateCache(CacheVersionHelper.java:50) > at hydra.CacheHelper.createCache(CacheHelper.java:100) > - locked <0x00000000f731bf18> (a java.lang.Class for > hydra.CacheHelper) > at > diskRecovery.StartupShutdownTest.HydraTask_initialize(StartupShutdownTest.java:169) > - locked <0x00000000f731bce8> (a java.lang.Class for > diskRecovery.StartupShutdownTest) > at > diskRecovery.StartupShutdownTest.HydraTask_initializeDuringShutDownAll(StartupShutdownTest.java:187) > - locked <0x00000000f731bce8> (a java.lang.Class for > diskRecovery.StartupShutdownTest) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at hydra.MethExecutor.execute(MethExecutor.java:199) > at hydra.MethExecutor.execute(MethExecutor.java:163) > at hydra.TestTask.execute(TestTask.java:195) > at hydra.RemoteTestModule$1.run(RemoteTestModule.java:216) > Found 1 deadlock. > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)