You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey Kuznetsov (JIRA)" <ji...@apache.org> on 2017/09/27 09:04:00 UTC
[jira] [Commented] (IGNITE-6043) Fix GridCacheSemaphoreImpl methods
semantics
[ https://issues.apache.org/jira/browse/IGNITE-6043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16182215#comment-16182215 ]
Andrey Kuznetsov commented on IGNITE-6043:
------------------------------------------
I've misunderstood the implementation. That is, GridCacheSemaphoreImpl is bounded and works similar to java.util.concurrent.Semaphore.
> Fix GridCacheSemaphoreImpl methods semantics
> --------------------------------------------
>
> Key: IGNITE-6043
> URL: https://issues.apache.org/jira/browse/IGNITE-6043
> Project: Ignite
> Issue Type: Bug
> Components: data structures
> Affects Versions: 2.1
> Reporter: Andrey Kuznetsov
> Assignee: Andrey Kuznetsov
> Priority: Critical
>
> Current semaphore implementation, {{GridCacheSemaphoreImpl}}, has inverted method semantics: {{acquire()}} releases the permit and {{release()}} acquires it. Also, debug-level method {{availablePermits()}} returns permits acquired so far. This confusing behaviour should be fixed.
> Also, it's worth noting in IgniteSemaphore's javadoc its unbounded nature, as opposed to {{java.util.concurrent.Semaphore}}.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)