You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Valentin Kulichenko (JIRA)" <ji...@apache.org> on 2016/03/05 04:51:40 UTC

[jira] [Commented] (IGNITE-2735) Interrupt all acquires on local node after ignite.close

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

Valentin Kulichenko commented on IGNITE-2735:
---------------------------------------------

Hi Vladislav,

For such functionality we have {{GridKernalGateway}}, which guards all public API calls from being invoked after node is stopped. It should be used here as well. Store a reference of {{GridKernalContext}} in the semaphore when it's created and surround public method implementations with {{ctx.gateway().readLock()}} and {{ctx.gateway().readUnlock()}}. As an example you can refer to {{GridExecutorService}}.

Also I believe this fix should be applied to all data structures, not only the semaphore.

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)