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

Tim Onyschak commented on IGNITE-7090:
--------------------------------------

I missed the resetting of the permits. OK i think i have what you want. 
However, i began thinking of a more generic solution to apply to any data 
structure which could end up out of sync between it's state object and cluster 
state. Should we look into handling something across the board?

 

Specifically, if we can hook into specific children of AtomicDataStructureValue 
that implement a new interface we can check instance and pass in current grid 
state to check DSState against and handle accordingly? Maybe a new Jira to 
track and refactor? Thoughts?

> Semaphore Stuck when no acquirers to assign permit
> --------------------------------------------------
>
>                 Key: IGNITE-7090
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7090
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, data structures
>    Affects Versions: 2.1, 2.4
>            Reporter: Tim Onyschak
>            Assignee: Tim Onyschak
>            Priority: Major
>             Fix For: 2.5
>
>         Attachments: SemaphoreFailoverNoWaitingAcquirerTest.java
>
>
> If no acquirers are available to take permit of semaphore, the permit never 
> gets release and any further acquirerers will wait forever. 
> On node shut down DataStructuresProcessor.dsMap gets cleared out prior to 
> event listener being able to execute onNodeRemoved, hence owner is never 
> cleared out if it was unable to pass to a different acquirer. 
>  



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

Reply via email to