Vladislav Pyatkov created IGNITE-29224:
------------------------------------------

             Summary: Misleading affinity history error when ready affinity 
version lags behind exchange future completion
                 Key: IGNITE-29224
                 URL: https://issues.apache.org/jira/browse/IGNITE-29224
             Project: Ignite
          Issue Type: Bug
            Reporter: Vladislav Pyatkov
         Attachments: ready-affinity-version-reproducer.patch

{{awaitPartitionMapExchange()}} can fail with:
{noformat}
Getting affinity for too old topology version that is already out of history
{noformat}
This message is misleading in this case: no affinity history has been evicted. 
The exchange future is already completed, but {{readyAffinityVersion()}} is 
updated later in its completion listener. During this gap, 
{{awaitPartitionMapExchange()}} can request affinity for a version preceding 
the creation of the cache. Increasing {{IGNITE_AFFINITY_HISTORY_SIZE}} does not 
address this race.

The waiting logic should account for publication of the ready affinity version, 
and the diagnostic should distinguish this case from actual history eviction.

*Reproducer:* apply [^ready-affinity-version-reproducer.patch] and run 
{{AwaitPartitionMapExchangeReadyVersionTest#testWaitPartitionMapExchangeWithLagOfReadyAffinity}}.
 The patch adds a temporary pause before the ready affinity version is 
published. It is diagnostic code supplied only for reproduction and is not 
intended to be committed.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to