Oleg Valuyskiy created IGNITE-28806:
---------------------------------------
Summary: CacheAffinitySharedManager may fail with "Invalid
exchange futures state" when thin clients create dynamic caches during cluster
restart
Key: IGNITE-28806
URL: https://issues.apache.org/jira/browse/IGNITE-28806
Project: Ignite
Issue Type: Task
Reporter: Oleg Valuyskiy
Assignee: Oleg Valuyskiy
Attachments: ThinClientDynamicCachePressureOnRestartTest.patch
A server node may fail during the first local join exchange if thin clients
concurrently issue *getOrCreateCache()* requests when cluster is starting.
Dynamic cache group descriptors can become visible in *cachesRegistry* before
the corresponding local *CacheGroupContext* is created. In this state,
*CacheAffinitySharedManager#initCoordinatorCaches* is called with
{*}newAff=false{*}, enters the *grp == null* branch, and tries to fetch
affinity from a previous completed exchange. For the first local join exchange
there is no previous exchange, which may lead to:
{code:java}
AssertionError: Invalid exchange futures state [cur=..., total=...]{code}
Reproducer:
--
This message was sent by Atlassian Jira
(v8.20.10#820010)