Vladimir Ozerov created IGNITE-7313:
---------------------------------------
Summary: Recovery process doesn't propagate MVCC version
Key: IGNITE-7313
URL: https://issues.apache.org/jira/browse/IGNITE-7313
Project: Ignite
Issue Type: Task
Components: cache
Reporter: Vladimir Ozerov
Fix For: 2.5
Reproducer:
{{IgnitePdsContinuousRestartTest.testRebalancingDuringLoad_8000_8000_8_16}}
Root cause: MVCC version is not passed during recovery process, as a result we
cannot commit transaction properly.
Stack trace:
{code}
[2017-12-26
17:44:03,011][ERROR][sys-stripe-5-#216%persistence.IgnitePdsContinuousRestartTest3%][G]
Failed to execute runnable.
java.lang.AssertionError: Mvcc is not initialized: GridDhtTxRemote
[nearNodeId=5213f13a-541e-41e0-ac30-c0cdc9d00000,
rmtFutId=ea4b6a39061-cf384028-0bcb-46d8-92e1-3c898390d074,
nearXidVer=GridCacheVersion [topVer=125779403, order=1514300484265,
nodeOrder=1], storeWriteThrough=false, super=GridDistributedTxRemoteAdapter
[explicitVers=null, started=true, commitAllowed=1,
txState=IgniteTxRemoteStateImpl [readMap={}, writeMap={IgniteTxKey
[key=KeyCacheObjectImpl [part=113, val=2545, hasValBytes=true],
cacheId=-1368047377]=IgniteTxEntry [key=KeyCacheObjectImpl [part=113, val=2545,
hasValBytes=true], cacheId=-1368047377, txKey=IgniteTxKey
[key=KeyCacheObjectImpl [part=113, val=2545, hasValBytes=true],
cacheId=-1368047377], val=[op=CREATE, val=CacheObjectImpl [val=null,
hasValBytes=true]], prevVal=[op=NOOP, val=null], oldVal=[op=NOOP, val=null],
entryProcessorsCol=null, ttl=-1, conflictExpireTime=-1, conflictVer=null,
explicitVer=null, dhtVer=null, filters=[], filtersPassed=false,
filtersSet=false, entry=GridDhtCacheEntry [rdrs=[], part=113,
super=GridDistributedCacheEntry [super=GridCacheMapEntry
[key=KeyCacheObjectImpl [part=113, val=2545, hasValBytes=true],
val=CacheObjectImpl [val=null, hasValBytes=true], startVer=1514300484409,
ver=GridCacheVersion [topVer=125779403, order=1514300455870, nodeOrder=2],
hash=2545, extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=null,
rmts=[GridCacheMvccCandidate [nodeId=91bcaf65-b816-41e9-a74e-ca58c8200001,
ver=GridCacheVersion [topVer=125779403, order=1514300484266, nodeOrder=2],
threadId=285, id=1158826, topVer=AffinityTopologyVersion [topVer=-1,
minorTopVer=0], reentry=null, otherNodeId=5213f13a-541e-41e0-ac30-c0cdc9d00000,
otherVer=null, mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
serOrder=null, key=KeyCacheObjectImpl [part=113, val=2545, hasValBytes=true],
masks=local=0|owner=1|ready=0|reentry=0|used=1|tx=1|single_implicit=0|dht_local=0|near_local=0|removed=0|read=0,
prevVer=null, nextVer=null]]]], flags=2]]], prepared=1, locked=false,
nodeId=null, locMapped=false, expiryPlc=null, transferExpiryPlc=false, flags=0,
partUpdateCntr=0, serReadVer=null, xidVer=null], IgniteTxKey
[key=KeyCacheObjectImpl [part=17, val=3089, hasValBytes=true],
cacheId=-1368047377]=IgniteTxEntry [key=KeyCacheObjectImpl [part=17, val=3089,
hasValBytes=true], cacheId=-1368047377, txKey=IgniteTxKey
[key=KeyCacheObjectImpl [part=17, val=3089, hasValBytes=true],
cacheId=-1368047377], val=[op=CREATE, val=CacheObjectImpl [val=null,
hasValBytes=true]], prevVal=[op=NOOP, val=null], oldVal=[op=NOOP, val=null],
entryProcessorsCol=null, ttl=-1, conflictExpireTime=-1, conflictVer=null,
explicitVer=null, dhtVer=null, filters=[], filtersPassed=false,
filtersSet=false, entry=GridDhtCacheEntry [rdrs=[], part=17,
super=GridDistributedCacheEntry [super=GridCacheMapEntry
[key=KeyCacheObjectImpl [part=17, val=3089, hasValBytes=true],
val=CacheObjectImpl [val=null, hasValBytes=true], startVer=1514300484410,
ver=GridCacheVersion [topVer=125779403, order=1514300459131, nodeOrder=2],
hash=3089, extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=null,
rmts=[GridCacheMvccCandidate [nodeId=91bcaf65-b816-41e9-a74e-ca58c8200001,
ver=GridCacheVersion [topVer=125779403, order=1514300484266, nodeOrder=2],
threadId=285, id=1158827, topVer=AffinityTopologyVersion [topVer=-1,
minorTopVer=0], reentry=null, otherNodeId=5213f13a-541e-41e0-ac30-c0cdc9d00000,
otherVer=null, mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
serOrder=null, key=KeyCacheObjectImpl [part=17, val=3089, hasValBytes=true],
masks=local=0|owner=1|ready=0|reentry=0|used=1|tx=1|single_implicit=0|dht_local=0|near_local=0|removed=0|read=0,
prevVer=null, nextVer=null]]]], flags=2]]], prepared=1, locked=false,
nodeId=null, locMapped=false, expiryPlc=null, transferExpiryPlc=false, flags=0,
partUpdateCntr=0, serReadVer=null, xidVer=null], IgniteTxKey
[key=KeyCacheObjectImpl [part=35, val=5155, hasValBytes=true],
cacheId=-1368047377]=IgniteTxEntry [key=KeyCacheObjectImpl [part=35, val=5155,
hasValBytes=true], cacheId=-1368047377, txKey=IgniteTxKey
[key=KeyCacheObjectImpl [part=35, val=5155, hasValBytes=true],
cacheId=-1368047377], val=[op=CREATE, val=CacheObjectImpl [val=null,
hasValBytes=true]], prevVal=[op=NOOP, val=null], oldVal=[op=NOOP, val=null],
entryProcessorsCol=null, ttl=-1, conflictExpireTime=-1, conflictVer=null,
explicitVer=null, dhtVer=null, filters=[], filtersPassed=false,
filtersSet=false, entry=GridDhtCacheEntry [rdrs=[], part=35,
super=GridDistributedCacheEntry [super=GridCacheMapEntry
[key=KeyCacheObjectImpl [part=35, val=5155, hasValBytes=true],
val=CacheObjectImpl [val=null, hasValBytes=true], startVer=1514300484411,
ver=GridCacheVersion [topVer=125779403, order=1514300450383, nodeOrder=2],
hash=5155, extras=GridCacheMvccEntryExtras [mvcc=GridCacheMvcc [locs=null,
rmts=[GridCacheMvccCandidate [nodeId=91bcaf65-b816-41e9-a74e-ca58c8200001,
ver=GridCacheVersion [topVer=125779403, order=1514300484266, nodeOrder=2],
threadId=285, id=1158828, topVer=AffinityTopologyVersion [topVer=-1,
minorTopVer=0], reentry=null, otherNodeId=5213f13a-541e-41e0-ac30-c0cdc9d00000,
otherVer=null, mappedDhtNodes=null, mappedNearNodes=null, ownerVer=null,
serOrder=null, key=KeyCacheObjectImpl [part=35, val=5155, hasValBytes=true],
masks=local=0|owner=1|ready=0|reentry=0|used=1|tx=1|single_implicit=0|dht_local=0|near_local=0|removed=0|read=0,
prevVer=null, nextVer=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=125779403, order=1514300484266, nodeOrder=2],
writeVer=GridCacheVersion [topVer=125779403, order=1514300484390, nodeOrder=2],
implicit=false, loc=false, threadId=285, startTime=1514299442060,
nodeId=91bcaf65-b816-41e9-a74e-ca58c8200001, startVer=GridCacheVersion
[topVer=125779403, order=1514300484408, nodeOrder=6], endVer=null,
isolation=READ_COMMITTED, concurrency=OPTIMISTIC, timeout=0,
sysInvalidate=false, sys=false, plc=2, commitVer=null,
finalizing=RECOVERY_FINISH, invalidParts=null, state=COMMITTING,
timedOut=false, topVer=AffinityTopologyVersion [topVer=6, minorTopVer=1],
duration=888ms, onePhaseCommit=false]]]
at
org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxRemoteAdapter.commitIfLocked(GridDistributedTxRemoteAdapter.java:477)
at
org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxRemoteAdapter.commitRemoteTx(GridDistributedTxRemoteAdapter.java:805)
at
org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxRemoteAdapter.commitAsync(GridDistributedTxRemoteAdapter.java:820)
at
org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.finishTxOnRecovery(IgniteTxManager.java:1981)
at
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.onDone(GridCacheTxRecoveryFuture.java:501)
at
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.onDone(GridCacheTxRecoveryFuture.java:51)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:451)
at
org.apache.ignite.internal.util.future.GridCompoundFuture.checkComplete(GridCompoundFuture.java:285)
at
org.apache.ignite.internal.util.future.GridCompoundFuture.apply(GridCompoundFuture.java:144)
at
org.apache.ignite.internal.util.future.GridCompoundFuture.apply(GridCompoundFuture.java:45)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(GridFutureAdapter.java:383)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.unblock(GridFutureAdapter.java:347)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.unblockAll(GridFutureAdapter.java:335)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:495)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:474)
at
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:451)
at
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture$MiniFuture.onResult(GridCacheTxRecoveryFuture.java:616)
at
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture$MiniFuture.access$700(GridCacheTxRecoveryFuture.java:548)
at
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture.onResult(GridCacheTxRecoveryFuture.java:398)
at
org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.processCheckPreparedTxResponse(IgniteTxHandler.java:1908)
at
org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$11.apply(IgniteTxHandler.java:239)
at
org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$11.apply(IgniteTxHandler.java:237)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1060)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:579)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:378)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:304)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$100(GridCacheIoManager.java:99)
at
org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:293)
at
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1567)
at
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1195)
at
org.apache.ignite.internal.managers.communication.GridIoManager.access$4200(GridIoManager.java:128)
at
org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1092)
at
org.apache.ignite.internal.util.StripedExecutor$Stripe.run(StripedExecutor.java:499)
at java.lang.Thread.run(Thread.java:748)
{code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)