[
https://issues.apache.org/jira/browse/IGNITE-29233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18138739#comment-18138739
]
Ignite TC Bot commented on IGNITE-29233:
----------------------------------------
{panel:title=Branch: [pull/13775/head] Base: [master] : No blockers
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/13775/head] Base: [master] : New Tests
(7)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#00008b}Cache 16{color} [[tests
7|https://ci2.ignite.apache.org/viewLog.html?buildId=9473333]]
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testTimeoutDuringMapping - PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testTimeoutBeforePostponedMapping -
PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testMultiKeyLockTimeoutWithHeldKey -
PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
dht.ExplicitLockTimeoutDuringMappingTest - PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testReentrantLockTimeoutDuringMapping -
PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testTimeoutDuringRemoteMappingOnServer -
PASSED{color}
* {color:#013220}IgniteCacheTestSuite14:
ExplicitLockTimeoutDuringMappingTest.testTimeoutDuringRemoteMappingOnClient -
PASSED{color}
{panel}
[TeamCity *--> Run :: All*
Results|https://ci2.ignite.apache.org/viewLog.html?buildId=9473347&buildTypeId=IgniteTests24Java8_RunAll]
{color:#ffffff}tcbot-analysis-comment chainBuildId=9473347
rerunBuildIds=none{color}
> Fix explicit lock left acquired when its timeout expires during mapping
> -----------------------------------------------------------------------
>
> Key: IGNITE-29233
> URL: https://issues.apache.org/jira/browse/IGNITE-29233
> Project: Ignite
> Issue Type: Bug
> Reporter: Nikita Amelchev
> Assignee: Nikita Amelchev
> Priority: Critical
> Fix For: 2.19
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Fix explicit lock left acquired when its timeout expires during mapping
> If the timeout of {{IgniteCache.lock(key).tryLock(timeout)}} expires while
> the lock request is still being mapped (a GC pause longer than the timeout,
> or the mapping waits for an exchange), the lock future is completed and
> undone *before* its candidates are registered. {{tryLock}} returns {{false}},
> but:
> * the key stays locked on the primary node with no thread able to release it;
> * the next partition map exchange hangs waiting for the leaked candidate.
> A reentry of a key the thread already holds is not reverted either when a
> multi-key lock times out, so the key stays locked after the holder releases
> it.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)