[ https://issues.apache.org/jira/browse/GEODE-3276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16139438#comment-16139438 ]
ASF subversion and git services commented on GEODE-3276: -------------------------------------------------------- Commit 0daf9549a69a135ad1ab267be8e0749e00986dfa in geode's branch refs/heads/develop from [~nnag] [ https://git-wip-us.apache.org/repos/asf?p=geode.git;h=0daf954 ] GEODE-3276: Managing race conditions while the senders are stopped * When a connection is initialized, a readAckThread may be alive from a previous incarnation. * This AckThread will be stuck on a read socket with no timeout as nothing was dispatched. * Also while it was stuck on the read, it will hold a connection lifecycle read lock * The initialize connection needs a connection life cycle write lock to start the connection but the read lock is held by the ack thread. * This results in a deadlock and eventually a hang. * Another situation is that we set the flag isStopped for the event processor before actually shutting down the diapatcher and ack thread. * So after the flag is set and before actually shutting down the dispatcher and ackThread, a gateway proxy stomper thread gets in between these two steps of execution. * The stomper thread checks the isStopped flag, which was set to true, and proceeds to destroy the connection pool. However the dispatcher and ackThread were still running. * This results in a out of heap memory exception while the ack thread is reading from the socket while connection pool was destroyed. * To solve this issue, the stomper thread checks if the event processor and dispatcher exists, if true then we close the input streams before destroying the connection pool. This closes #732 > CI failure: > org.apache.geode.internal.cache.wan.parallel.ParallelWANStatsDUnitTest > > testParallelPropagationWithRemoteRegionDestroy FAILED > ------------------------------------------------------------------------------------------------------------------------------------------ > > Key: GEODE-3276 > URL: https://issues.apache.org/jira/browse/GEODE-3276 > Project: Geode > Issue Type: Bug > Components: statistics, wan > Affects Versions: 1.2.0 > Reporter: Shelley Lynn Hughes-Godfrey > Assignee: nabarun > > {noformat} > org.apache.geode.internal.cache.wan.parallel.ParallelWANStatsDUnitTest > > testParallelPropagationWithRemoteRegionDestroy FAILED > java.lang.AssertionError: An exception occurred during asynchronous > invocation. > Caused by: > java.lang.OutOfMemoryError: Java heap space > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)