[ 
https://issues.apache.org/jira/browse/IGNITE-28758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikita Amelchev updated IGNITE-28758:
-------------------------------------
    Description: For non-transactional explicit locks, the local DHT lock 
callback may complete after the outer GridDhtColocatedLockFuture has already 
been finished by timeout/cancel/error cleanup. In that case cleanup removes the 
explicit lock candidate, but the late local callback still proceeds to 
markExplicitOwner(), which can hit GridCacheExplicitLockSpan.markOwned() 
assertion or leave a locally acquired lock behind.  (was: For non-transactional 
explicit locks in colocated cache, the local DHT lock callback may complete 
after the outer GridDhtColocatedLockFuture has already been finished by 
timeout/cancel/error cleanup. In that case cleanup removes the explicit lock 
candidate, but the late local callback still proceeds to markExplicitOwner(), 
which can hit GridCacheExplicitLockSpan.markOwned() assertion or leave a 
locally acquired lock behind.)

> Explicit lock local-DHT callback can race with timeout/cancel cleanup.
> ----------------------------------------------------------------------
>
>                 Key: IGNITE-28758
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28758
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Nikita Amelchev
>            Assignee: Nikita Amelchev
>            Priority: Major
>              Labels: ise
>             Fix For: 2.19
>
>
> For non-transactional explicit locks, the local DHT lock callback may 
> complete after the outer GridDhtColocatedLockFuture has already been finished 
> by timeout/cancel/error cleanup. In that case cleanup removes the explicit 
> lock candidate, but the late local callback still proceeds to 
> markExplicitOwner(), which can hit GridCacheExplicitLockSpan.markOwned() 
> assertion or leave a locally acquired lock behind.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to