[
https://issues.apache.org/jira/browse/IGNITE-14423?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Denis Chudov reassigned IGNITE-14423:
-------------------------------------
Assignee: Denis Chudov
> Node failure caused by AssertionError: Transaction does not own lock for
> update
> -------------------------------------------------------------------------------
>
> Key: IGNITE-14423
> URL: https://issues.apache.org/jira/browse/IGNITE-14423
> Project: Ignite
> Issue Type: Bug
> Reporter: Denis Chudov
> Assignee: Denis Chudov
> Priority: Major
>
> Scenario:
> 1. Start 3 servers
> 2. Start 2 clients
> 3. Start two OPTIMISTIC transactions with the same key from different client
> nodes
> 4. Transfer transactions to PREPARED STATE on primary node
> 5. Stop one client node(whose transaction changed state to PREPARED last)
>
> Error in log:
> {code:java}
> [2021-03-03
> 08:52:59,807][ERROR][sys-#499%transactions.TxRecoveryWithConcurrentRollbackTest1%][GridNearTxLocal]
> Failed completing the transaction: [commit=true, tx=GridDhtTxLocal
> [nearNodeId=29551b46-74ef-4e35-af4a-d97809cc5260,
> nearFutId=08b25a6f771-eec14fa0-02ef-46b9-97d9-0f2b7c851ddb, nearMiniId=1,
> nearFinFutId=null, nearFinMiniId=0, nearXidVer=GridCacheVersion
> [topVer=226230774, order=1614750773047, nodeOrder=4], lb=tx,
> super=GridDhtTxLocalAdapter [nearOnOriginatingNode=false,
> nearNodes=KeySetView [], dhtNodes=KeySetView [], explicitLock=false,
> super=IgniteTxLocalAdapter [completedBase=null, sndTransformedVals=false,
> depEnabled=false, txState=IgniteTxStateImpl [activeCacheIds=[1544803905],
> recovery=false, mvccEnabled=false, mvccCachingCacheIds=[], txMap=ArrayList
> [IgniteTxEntry [txKey=IgniteTxKey [key=KeyCacheObjectImpl [part=1, val=1,
> hasValBytes=true], cacheId=1544803905], val=TxEntryValueHolder
> [val=CacheObjectImpl [val=null, hasValBytes=true], op=CREATE],
> prevVal=TxEntryValueHolder [val=null, op=NOOP], oldVal=TxEntryValueHolder
> [val=null, op=NOOP], entryProcessorsCol=null, ttl=-1, conflictExpireTime=-1,
> conflictVer=null, explicitVer=null, dhtVer=null,
> filters=CacheEntryPredicate[] [], filtersPassed=false, filtersSet=false,
> entry=GridDhtCacheEntry [rdrs=ReaderId[] [], part=1,
> super=GridDistributedCacheEntry [super=GridCacheMapEntry
> [key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true], val=null,
> ver=GridCacheVersion [topVer=226230774, order=1614750774035, nodeOrder=2],
> hash=1, extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=LinkedList
> [GridCacheMvccCandidate [nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001,
> ver=GridCacheVersion [topVer=226230774, order=1614750774033, nodeOrder=2],
> threadId=364, id=5, topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0],
> reentry=null, otherNodeId=207c7f09-21a9-4b99-b631-3304a522b002,
> otherVer=GridCacheVersion [topVer=226230774, order=1614750774032,
> nodeOrder=5], mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
> serOrder=null, key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true],
> masks=local=1|owner=1|ready=1|reentry=0|used=0|tx=1|single_implicit=0|dht_local=1|near_local=0|removed=0|read=0,
> prevVer=null, nextVer=null]], rmts=null]], flags=3]]], prepared=1,
> locked=false, nodeId=null, locMapped=false, expiryPlc=null,
> transferExpiryPlc=false, flags=0, partUpdateCntr=0, serReadVer=null,
> xidVer=null]]], super=IgniteTxAdapter [xidVer=GridCacheVersion
> [topVer=226230774, order=1614750774035, nodeOrder=2], writeVer=null,
> implicit=false, loc=true, threadId=686, startTime=1614750774753,
> nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001, isolation=READ_COMMITTED,
> concurrency=OPTIMISTIC, timeout=5000, sysInvalidate=true, sys=false, plc=2,
> commitVer=GridCacheVersion [topVer=226230774, order=1614750774035,
> nodeOrder=2], finalizing=RECOVERY_FINISH, invalidParts=null, state=UNKNOWN,
> timedOut=false, topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0],
> mvccSnapshot=null, skipCompletedVers=false, parentTx=null, duration=5048ms,
> onePhaseCommit=false], size=1]]]]
> class
> org.apache.ignite.internal.transactions.IgniteTxHeuristicCheckedException:
> Committing a transaction has produced runtime exception
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxAdapter.heuristicException(IgniteTxAdapter.java:813)
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter.userCommit(IgniteTxLocalAdapter.java:969)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocalAdapter.localFinish(GridDhtTxLocalAdapter.java:794)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.localFinish(GridDhtTxLocal.java:605)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.finishTx(GridDhtTxLocal.java:477)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.commitDhtLocalAsync(GridDhtTxLocal.java:534)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.commitAsync(GridDhtTxLocal.java:542)
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.finishTxOnRecovery(IgniteTxManager.java:2370)
> at
> org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.onDone(GridCacheTxRecoveryFuture.java:492)
> at
> org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.onDone(GridCacheTxRecoveryFuture.java:51)
> at
> org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:475)
> at
> org.apache.ignite.internal.util.future.GridCompoundFuture.checkComplete(GridCompoundFuture.java:284)
> at
> org.apache.ignite.internal.util.future.GridCompoundFuture.markInitialized(GridCompoundFuture.java:273)
> at
> org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.proceedPrepare(GridCacheTxRecoveryFuture.java:354)
> at
> org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.prepare(GridCacheTxRecoveryFuture.java:252)
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.commitIfPrepared(IgniteTxManager.java:2420)
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$TxRecoveryInitRunnable.run(IgniteTxManager.java:3218)
> at
> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:7190)
> at
> org.apache.ignite.internal.processors.closure.GridClosureProcessor$1.body(GridClosureProcessor.java:826)
> at
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:119)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.AssertionError: Transaction does not own lock for update
> [entry=GridDhtCacheEntry [rdrs=ReaderId[] [], part=1,
> super=GridDistributedCacheEntry [super=GridCacheMapEntry
> [key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true], val=null,
> ver=GridCacheVersion [topVer=0, order=0, nodeOrder=0], hash=1,
> extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=LinkedList
> [GridCacheMvccCandidate [nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001,
> ver=GridCacheVersion [topVer=226230774, order=1614750774033, nodeOrder=2],
> threadId=364, id=5, topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0],
> reentry=null, otherNodeId=207c7f09-21a9-4b99-b631-3304a522b002,
> otherVer=GridCacheVersion [topVer=226230774, order=1614750774032,
> nodeOrder=5], mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
> serOrder=null, key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true],
> masks=local=1|owner=1|ready=1|reentry=0|used=0|tx=1|single_implicit=0|dht_local=1|near_local=0|removed=0|read=0,
> prevVer=null, nextVer=null], GridCacheMvccCandidate
> [nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001, ver=GridCacheVersion
> [topVer=226230774, order=1614750774035, nodeOrder=2], threadId=686, id=6,
> topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0], reentry=null,
> otherNodeId=29551b46-74ef-4e35-af4a-d97809cc5260, otherVer=GridCacheVersion
> [topVer=226230774, order=1614750773047, nodeOrder=4], mappedDhtNodes=null,
> mappedNearNodes=null, ownerVer=GridCacheVersion [topVer=226230774,
> order=1614750774033, nodeOrder=2], serOrder=null, key=KeyCacheObjectImpl
> [part=1, val=1, hasValBytes=true],
> masks=local=1|owner=0|ready=1|reentry=0|used=0|tx=1|single_implicit=0|dht_local=1|near_local=0|removed=0|read=0,
> prevVer=null, nextVer=null]], rmts=null]], flags=2]]], tx=GridDhtTxLocal
> [nearNodeId=29551b46-74ef-4e35-af4a-d97809cc5260,
> nearFutId=08b25a6f771-eec14fa0-02ef-46b9-97d9-0f2b7c851ddb, nearMiniId=1,
> nearFinFutId=null, nearFinMiniId=0, nearXidVer=GridCacheVersion
> [topVer=226230774, order=1614750773047, nodeOrder=4], lb=tx,
> super=GridDhtTxLocalAdapter [nearOnOriginatingNode=false,
> nearNodes=KeySetView [], dhtNodes=KeySetView [], explicitLock=false,
> super=IgniteTxLocalAdapter [completedBase=null, sndTransformedVals=false,
> depEnabled=false, txState=IgniteTxStateImpl [activeCacheIds=[1544803905],
> recovery=false, mvccEnabled=false, mvccCachingCacheIds=[], txMap=ArrayList
> [IgniteTxEntry [txKey=IgniteTxKey [key=KeyCacheObjectImpl [part=1, val=1,
> hasValBytes=true], cacheId=1544803905], val=TxEntryValueHolder
> [val=CacheObjectImpl [val=null, hasValBytes=true], op=CREATE],
> prevVal=TxEntryValueHolder [val=null, op=NOOP], oldVal=TxEntryValueHolder
> [val=null, op=NOOP], entryProcessorsCol=null, ttl=-1, conflictExpireTime=-1,
> conflictVer=null, explicitVer=null, dhtVer=null,
> filters=CacheEntryPredicate[] [], filtersPassed=false, filtersSet=false,
> entry=GridDhtCacheEntry [rdrs=ReaderId[] [], part=1,
> super=GridDistributedCacheEntry [super=GridCacheMapEntry
> [key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true], val=null,
> ver=GridCacheVersion [topVer=0, order=0, nodeOrder=0], hash=1,
> extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=LinkedList
> [GridCacheMvccCandidate [nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001,
> ver=GridCacheVersion [topVer=226230774, order=1614750774033, nodeOrder=2],
> threadId=364, id=5, topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0],
> reentry=null, otherNodeId=207c7f09-21a9-4b99-b631-3304a522b002,
> otherVer=GridCacheVersion [topVer=226230774, order=1614750774032,
> nodeOrder=5], mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
> serOrder=null, key=KeyCacheObjectImpl [part=1, val=1, hasValBytes=true],
> masks=local=1|owner=1|ready=1|reentry=0|used=0|tx=1|single_implicit=0|dht_local=1|near_local=0|removed=0|read=0,
> prevVer=null, nextVer=null], GridCacheMvccCandidate
> [nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001, ver=GridCacheVersion
> [topVer=226230774, order=1614750774035, nodeOrder=2], threadId=686, id=6,
> topVer=AffinityTopologyVersion [topVer=5, minorTopVer=0], reentry=null,
> otherNodeId=29551b46-74ef-4e35-af4a-d97809cc5260, otherVer=GridCacheVersion
> [topVer=226230774, order=1614750773047, nodeOrder=4], mappedDhtNodes=null,
> mappedNearNodes=null, ownerVer=GridCacheVersion [topVer=226230774,
> order=1614750774033, nodeOrder=2], serOrder=null, key=KeyCacheObjectImpl
> [part=1, val=1, hasValBytes=true],
> masks=local=1|owner=0|ready=1|reentry=0|used=0|tx=1|single_implicit=0|dht_local=1|near_local=0|removed=0|read=0,
> prevVer=null, nextVer=null]], rmts=null]], flags=2]]], prepared=1,
> locked=false, nodeId=null, locMapped=false, expiryPlc=null,
> transferExpiryPlc=false, flags=0, partUpdateCntr=0, serReadVer=null,
> xidVer=null]]], super=IgniteTxAdapter [xidVer=GridCacheVersion
> [topVer=226230774, order=1614750774035, nodeOrder=2], writeVer=null,
> implicit=false, loc=true, threadId=686, startTime=1614750774753,
> nodeId=b1f1a8e0-e1e8-4084-b9c6-bdd2a2700001, isolation=READ_COMMITTED,
> concurrency=OPTIMISTIC, timeout=5000, sysInvalidate=false, sys=false, plc=2,
> commitVer=GridCacheVersion [topVer=226230774, order=1614750774035,
> nodeOrder=2], finalizing=RECOVERY_FINISH, invalidParts=null,
> state=COMMITTING, timedOut=false, topVer=AffinityTopologyVersion [topVer=5,
> minorTopVer=0], mvccSnapshot=null, skipCompletedVers=false, parentTx=null,
> duration=5037ms, onePhaseCommit=false], size=1]]]]
> at
> org.apache.ignite.internal.processors.cache.GridCacheMapEntry.innerSet(GridCacheMapEntry.java:1488)
> at
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter.userCommit(IgniteTxLocalAdapter.java:756)
> ... 21 more
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)