You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/04/06 14:07:41 UTC

[jira] [Commented] (IGNITE-1977) IgniteSemaphore's failover related tests lead to the deadlock or fail

    [ https://issues.apache.org/jira/browse/IGNITE-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15958979#comment-15958979 ] 

ASF GitHub Bot commented on IGNITE-1977:
----------------------------------------

GitHub user vladisav opened a pull request:

    https://github.com/apache/ignite/pull/1751

    IGNITE-1977 Fixes IgniteSemaphore failover deadlock/fail bug

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/vladisav/ignite ignite-1977

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/1751.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1751
    
----
commit 04c6de5b7fb23c9e762cb4be57163189982c2f33
Author: Vladisav Jelisavcic <vl...@gmail.com>
Date:   2017-04-06T13:57:51Z

    Fixes IGNITE-1977;

----


> IgniteSemaphore's failover related tests lead to the deadlock or fail
> ---------------------------------------------------------------------
>
>                 Key: IGNITE-1977
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1977
>             Project: Ignite
>          Issue Type: Bug
>          Components: data structures
>    Affects Versions: 1.8, 1.9
>            Reporter: Denis Magda
>            Assignee: Vladisav Jelisavcic
>             Fix For: 2.0
>
>
> All {{IgniteSemaphore}} related tests from {{GridCacheAbstractDataStructuresFailoverSelfTest}} may cause a deadlock which leads to the whole suite hanging.
> The threads are waiting for the following condition:
> {noformat}
> "topology-change-thread-3" prio=6 tid=0x000000001d98d800 nid=0x2b20 waiting on condition [0x000000002066f000]
>    java.lang.Thread.State: WAITING (parking)
> 	at sun.misc.Unsafe.park(Native Method)
> 	- parking to wait for  <0x0000000798149948> (a org.apache.ignite.internal.processors.datastructures.GridCacheSemaphoreImpl$Sync)
> 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
> 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
> 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
> 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
> 	at org.apache.ignite.internal.processors.datastructures.GridCacheSemaphoreImpl.acquire(GridCacheSemaphoreImpl.java:538)
> 	at org.apache.ignite.internal.processors.datastructures.GridCacheSemaphoreImpl.acquire(GridCacheSemaphoreImpl.java:525)
> 	at org.apache.ignite.internal.processors.cache.datastructures.GridCacheAbstractDataStructuresFailoverSelfTest$7.apply(GridCacheAbstractDataStructuresFailoverSelfTest.java:571)
> 	at org.apache.ignite.internal.util.lang.GridAbsClosure.run(GridAbsClosure.java:50)
> 	at org.apache.ignite.testframework.GridTestUtils$7.call(GridTestUtils.java:967)
> 	at org.apache.ignite.testframework.GridTestThread.run(GridTestThread.java:86)
> {noformat}
> Probably the semaphore is not properly released when a node leaves the topology abruptly.
> In addition the tests should be rewritten to the way which is followed by other data structures and atomics from this suite: using {{ConstantTopologyChangeWorker}} and its descendants.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)