You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ivan Veselovsky (JIRA)" <ji...@apache.org> on 2015/08/26 11:18:45 UTC

[jira] [Created] (IGNITE-1304) Async cache operations in IGFS may cause deadlock related to topology update

Ivan Veselovsky created IGNITE-1304:
---------------------------------------

             Summary: Async cache operations in IGFS may cause deadlock related to topology update
                 Key: IGNITE-1304
                 URL: https://issues.apache.org/jira/browse/IGNITE-1304
             Project: Ignite
          Issue Type: Bug
          Components: cache
    Affects Versions: ignite-1.4
            Reporter: Ivan Veselovsky
             Fix For: ignite-1.5


In an IGFS test we observe a deadlock situation related to cluster topology update (full thread dump is attached).
The problem is that several threads are waiting for the topology update, at the same time holding the read lock of the topology version update:
Thread #1:
 GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:450)
  ....
  GridNearOptimisticTxPrepareFuture.prepareOnTopology(GridNearOptimisticTxPrepareFuture.java:280)

At the same time another thread, that wants to update the topology version, cannot do that because it needs the write lock of the topology update: 
Thread #2:
   at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:945)
        at o.a.i.i.processors.cache.distributed.dht.GridDhtPartitionTopologyImpl.updateTopologyVersion(GridDhtPartitionTopologyImpl.java:190)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)