Alexandr Kuramshin created IGNITE-6965: ------------------------------------------
Summary: affinityCall() with key mapping may not be successful with AlwaysFailoverSpi when node left Key: IGNITE-6965 URL: https://issues.apache.org/jira/browse/IGNITE-6965 Project: Ignite Issue Type: Bug Components: cache, compute Affects Versions: 2.3 Reporter: Alexandr Kuramshin When doing {{affinityCall(cacheName, key, callable)}} there is a race between affinity node left then stopped and {{AlwaysFailoverSpi}} max attempts reached. Suppose the following sequence (more probable when {{grid2.order}} >> {{grid1.order}}): 1. {{grid1.affinityCall(cacheName, key, callable)}} 2. {{grid1}}: {{key}} mapped to the primary partition on {{grid2}} 3. {{grid2.stop()}} 4. {{grid1}} receives {{NODE_LEFT}} and updates {{discoCache}} 5. {{grid1}} execution {{callable}} failed with 'Failed to send job request because remote node left grid (if fail-over is enabled, will attempt fail-over to another node' 6. {{grid1}}: {{AlwaysFailoverSpi}} max attempts reached. 7. {{grid1.affinityCall}} failed with 'Job failover failed because number of maximum failover attempts for affinity call is exceeded' 8. {{grid2}} receives verified node left message then stopping. The patched {{CacheAffinityCallSelfTest}} reproduces the problem. -- This message was sent by Atlassian JIRA (v6.4.14#64029)