[
https://issues.apache.org/jira/browse/IGNITE-2735?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15185573#comment-15185573
]
Vladisav Jelisavcic commented on IGNITE-2735:
---------------------------------------------
Actually, I think you do; since acquire is a blocking operation, when stop
signal comes, there might be blocked threads still waiting to a acquire. This
way we can have a quick path, so all blocked threads can be unblocked
immediately (without further attempt to execute any transactions), and
everything shuts down fast and gracefully (which I think was the reason why
IGNITE-1977 fails). I don't think simply using the gateway could do this. The
same mechanism is used to throw exceptions when other node fails and semaphore
is in non-failoversafe mode.
Does this makes any sense? Let me know if I overlooked something.
Thanks!
> Interrupt all acquires on local node after ignite.close
> -------------------------------------------------------
>
> Key: IGNITE-2735
> URL: https://issues.apache.org/jira/browse/IGNITE-2735
> Project: Ignite
> Issue Type: Bug
> Components: data structures
> Affects Versions: 1.6
> Reporter: Vladisav Jelisavcic
> Assignee: Vladisav Jelisavcic
> Fix For: 1.5.0.final
>
>
> "acquire" method should throw an exception when semaphore is no longer
> accessible when node is stopped.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)