Ryan McMahon created GEODE-5162:
-----------------------------------

             Summary: Race condition between cache destruction and background 
thread cache access
                 Key: GEODE-5162
                 URL: https://issues.apache.org/jira/browse/GEODE-5162
             Project: Geode
          Issue Type: Bug
          Components: native client
            Reporter: Ryan McMahon


A race condition exists where the cache is accessed after it has been destroyed 
in one of the many background threads created for various reasons (failover, 
cleanup, periodic acks, etc).

TcrConnectionManager.startFailoverAndCleanupThreads()

ThinClientPoolHADM.startBackgroundThreads()

HostSampler.start()

There are probably other places where background threads are spun up as well, 
but these are the ones that were found in our tests.

There is no synchronization between these background threads and the thread 
which destroys the cache, so it is possible that the background threads access 
the cache after destruction.  We should investigate a robust way of 
synchronizing between the thread that creates/destroys the cache and the 
background threads, or evaluate if we can eliminate the dependency on the cache 
in the background threads.

 



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

Reply via email to