[
https://issues.apache.org/jira/browse/IGNITE-9290?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16710185#comment-16710185
]
Andrew Mashenkov commented on IGNITE-9290:
------------------------------------------
[~ilantukh]
# Agree, this looks wrong. Reverted onLeft call change.
Do we really need to call onLeft twice from onClientLeft\onServerLeft
recursively and then possibly once again? unwindEvicts may costs and look like
it shouldn't spent exchange thread time.
# I see no removeExplicitNodeLocks() call from ExchangeFuture.
Merged with latest master and still see no unnecessary
removeExplicitNodeLocks() calls.
> Make remove explicit locks async when node left.
> ------------------------------------------------
>
> Key: IGNITE-9290
> URL: https://issues.apache.org/jira/browse/IGNITE-9290
> Project: Ignite
> Issue Type: Bug
> Components: cache
> Reporter: Andrew Mashenkov
> Assignee: Andrew Mashenkov
> Priority: Critical
> Labels: deadlock, iep-25
> Fix For: 2.8
>
>
> GridCacheMvccManager.removeExplicitNodeLocks() run synchronously in discovery
> and exchange threads. This introduce unnecessary delays in discovery and
> exchange process.
> Also, this may cause a deadlock on node stop if user transaction holds an
> entry lock and awaits some Ignite manager response (e.g. cache store or DR or
> CQ), as manager stops right after last exchange has finished so managers
> can't detect node is stopping.
>
> [1]
> [http://apache-ignite-developers.2346864.n4.nabble.com/Synchronous-tx-entries-unlocking-in-discovery-exchange-threads-td33827.html]
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)