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

Vladimir Pligin reassigned IGNITE-27702:
----------------------------------------

    Assignee: Anton Laletin

> Failed attempt to switch transaction state in persistent storage shouldn't 
> trigger failure handler
> --------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-27702
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27702
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Denis Chudov
>            Assignee: Anton Laletin
>            Priority: Major
>              Labels: ignite-3
>
> Stack trace:
> {code:java}
> 2026-01-27 02:30:38:502 +0000 
> [ERROR][%cac-dpd-cde-gg-aks-dev-1%JRaft-FSMCaller-Disruptor_stripe_0-0][FailureManager]
>  Critical system error detected. Will be handled accordingly to configured 
> handler [hnd=NoOpFailureHandler [super=AbstractFailureHandler 
> [ignoredFailureTypes=UnmodifiableSet [SYSTEM_WORKER_BLOCKED, 
> SYSTEM_CRITICAL_OPERATION_TIMEOUT]]], failureCtx=CRITICAL_ERROR, 
> failureCtxId=9b6d5152-3816-465d-8e68-e95f29baa4b1]
> org.apache.ignite.internal.failure.StackTraceCapturingException: 
> IGN-CMN-65535 Unknown error TraceId:af286bf9
>     at 
> org.apache.ignite.internal.failure.FailureManager.process(FailureManager.java:191)
>     at 
> org.apache.ignite.internal.failure.FailureManager.process(FailureManager.java:168)
>     at 
> org.apache.ignite.internal.raft.server.impl.JraftServerImpl$DelegatingStateMachine.onApply(JraftServerImpl.java:949)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doApplyTasks(FSMCallerImpl.java:574)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doCommitted(FSMCallerImpl.java:540)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.runApplyTask(FSMCallerImpl.java:454)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:123)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:117)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:322)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:279)
>     at 
> com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:167)
>     at 
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:122)
>     at java.base/java.lang.Thread.run(Unknown Source)
> Caused by: 
> org.apache.ignite.internal.partition.replicator.raft.UnexpectedTransactionStateException:
>  IGN-TX-3 Failed to update tx state in the storage, transaction txId = 
> 019bfd48-d08d-005a-399b-326e00000001 because of inconsistent state, expected 
> state = TxMeta [txState=COMMITTED, commitTimestamp=HybridTimestamp 
> [physical=2026-01-27 02:29:38:018 +0000, logical=201, 
> composite=115964705375387849]], state to set = TxMeta [txState=ABORTED, 
> commitTimestamp=null] TraceId:af286bf9
>     at 
> org.apache.ignite.internal.partition.replicator.raft.handlers.FinishTxCommandHandler.onTxStateStorageCasFail(FinishTxCommandHandler.java:128)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.handlers.FinishTxCommandHandler.handleInternally(FinishTxCommandHandler.java:101)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.handlers.FinishTxCommandHandler.handleInternally(FinishTxCommandHandler.java:41)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.handlers.AbstractCommandHandler.handle(AbstractCommandHandler.java:37)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.ZonePartitionRaftListener.processWriteCommand(ZonePartitionRaftListener.java:220)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.ZonePartitionRaftListener.lambda$onWrite$1(ZonePartitionRaftListener.java:154)
>     at java.base/java.util.Iterator.forEachRemaining(Unknown Source)
>     at 
> org.apache.ignite.internal.partition.replicator.raft.ZonePartitionRaftListener.onWrite(ZonePartitionRaftListener.java:152)
>     at 
> org.apache.ignite.internal.raft.server.impl.JraftServerImpl$DelegatingStateMachine.onApply(JraftServerImpl.java:930)
>     ... 10 more{code}
> This is legitimate scenario: for example, transaction recovery in parallel 
> with commit.
> This shouldn't be considered as critical error, but actor who's attempt 
> failed should get the proper notification about transaction outcome.



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

Reply via email to