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

Ivan Bessonov updated IGNITE-28361:
-----------------------------------
    Reviewer: Mirza Aliev

> ResourceVacuumManager#vacuumOrphanTxResources fails on concurrent tx cleanup
> ----------------------------------------------------------------------------
>
>                 Key: IGNITE-28361
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28361
>             Project: Ignite
>          Issue Type: Bug
>          Components: transactions ai3
>            Reporter: Ivan Bessonov
>            Assignee: Ivan Bessonov
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code:java}
> org.apache.ignite.internal.failure.StackTraceCapturingException:
>   IGN-CMN-65535 Error occurred during the orphan resources closing.Caused by: 
> java.lang.NullPointerException:
>   Cannot invoke "java.util.Set.iterator()" because "resourceIds" is null
>     at RemotelyTriggeredResourceRegistry.closeByRemoteHostId(...java:151)
>     at ResourceVacuumManager.vacuumOrphanTxResources(...java:195) {code}
> Race scenario:
> {code:java}
> Vacuum thread:   registeredRemoteHosts() → {coordinatorX}  ← X present in 
> keySet
>                  getById(coordinatorX) == null → decision: close resources 
> for X
> Cleanup thread:  close(lastTxId_of_coordinatorX)
>                  → removeRemoteHostResource(coordinatorX, lastResource)
>                  → coordinatorX entry REMOVED from remoteHostsToResources
> Vacuum thread:   closeByRemoteHostId(coordinatorX)
>                  → remoteHostsToResources.get(coordinatorX) = null
>                  → NullPointerException!
> {code}



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

Reply via email to