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

Vladislav Pyatkov updated IGNITE-23373:
---------------------------------------
    Description: 
h3. Motivation

This exception leads to the system's critical error and has a high impact on 
the application.

Similar exceptions can be reproduced in various tests due to misusing the 
version value conception (it assumes that the revision would be in the 
predicted horizon). Currently, we can call it asynchronously in unpredictable 
future, so any history capacity might be exhausted.

Look at the using pattern of `localPartitionsVv` here: 
TableManager#restartPartitionWithCleanUp
h3. Implementation notes

The `localPartitionsVv` is used to linearize, create a table, and create all 
partitions in the table (table first, partitions after).

I think we can start to exclude this concept and get rid of the 
`localPartitionsVv`.
h3. Definition of done

We should get rid of using `localPartitionsVv` in the restart partition flow 
(at least because the VV is linearizing the table start process, but it does 
not apply for a partition restart).

  was:
Can be reproduced locally when running 
{{ItEstimatedSizeTest#testEstimatedSizeAfterScaleUp}}. After the test fails, 
the following error message can be found in logs (not always, though): 

{noformat}
[2024-10-02T20:26:34,420][ERROR][%iest_tesasu_1%tableManager-io-14][ReplicaManager$ReplicaStateManager]
 Replica stop failed [groupId=12_part_4]
 java.util.concurrent.CompletionException: 
org.apache.ignite.internal.causality.OutdatedTokenException: IGN-CMN-65535 
TraceId:eb8da00c-eed3-4484-b9bf-a58a45e28fe4 Token expired [token=758, 
actualToken=778, historySize=10]
{noformat}

Also see the full log in attachment.

To reproduce locally, the number of partitions should be increased as it 
greatly increases the probability of failure.



> OutdatedTokenException when running 
> ItDisasterRecoveryManagerTest#testRestartTablePartitionsWithCleanUp
> -------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-23373
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23373
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Aleksandr Polovtsev
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain, ignite-3
>         Attachments: 
> _Integration_Tests_Integration_Transactions_16103.log.zip, log.log
>
>
> h3. Motivation
> This exception leads to the system's critical error and has a high impact on 
> the application.
> Similar exceptions can be reproduced in various tests due to misusing the 
> version value conception (it assumes that the revision would be in the 
> predicted horizon). Currently, we can call it asynchronously in unpredictable 
> future, so any history capacity might be exhausted.
> Look at the using pattern of `localPartitionsVv` here: 
> TableManager#restartPartitionWithCleanUp
> h3. Implementation notes
> The `localPartitionsVv` is used to linearize, create a table, and create all 
> partitions in the table (table first, partitions after).
> I think we can start to exclude this concept and get rid of the 
> `localPartitionsVv`.
> h3. Definition of done
> We should get rid of using `localPartitionsVv` in the restart partition flow 
> (at least because the VV is linearizing the table start process, but it does 
> not apply for a partition restart).



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

Reply via email to