[
https://issues.apache.org/jira/browse/IGNITE-6043?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Kuznetsov updated IGNITE-6043:
-------------------------------------
Description:
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}}.
was:
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 it's unbounded nature, as
opposed 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
> 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)