[ 
https://issues.apache.org/jira/browse/IGNITE-14771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17350880#comment-17350880
 ] 

Sergey Chugunov commented on IGNITE-14771:
------------------------------------------

[~ibessonov],

Change looks good to me, please merge it to master. Thank you for the fix!

> Deadlock in 
> org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager.GridCacheDataStore#init0
> --------------------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-14771
>                 URL: https://issues.apache.org/jira/browse/IGNITE-14771
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Ivan Bessonov
>            Assignee: Ivan Bessonov
>            Priority: Major
>             Fix For: 2.11
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code:java}
> Thread [name="sys-#145", id=178, state=RUNNABLE, blockCnt=47, waitCnt=135]
>         at sun.management.ThreadImpl.dumpThreads0(Native Method)
>         at sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:454)
>         at o.a.i.i.util.IgniteUtils.dumpThreads(IgniteUtils.java:1482)
>         at 
> o.a.i.i.processors.failure.FailureProcessor.process(FailureProcessor.java:187)
>         - locked o.a.i.i.processors.failure.FailureProcessor@7ff7120d
>         at 
> o.a.i.i.processors.failure.FailureProcessor.process(FailureProcessor.java:150)
>         at 
> o.a.i.i.processors.cache.persistence.checkpoint.CheckpointTimeoutLock.failCheckpointReadLock(CheckpointTimeoutLock.java:216)
>         at 
> o.a.i.i.processors.cache.persistence.checkpoint.CheckpointTimeoutLock.checkpointReadLock(CheckpointTimeoutLock.java:113)
>         at 
> o.a.i.i.processors.cache.persistence.GridCacheDatabaseSharedManager.checkpointReadLock(GridCacheDatabaseSharedManager.java:1586)
>         at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.init0(GridCacheOffheapManager.java:2177)
>         at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.tombstonesCount(GridCacheOffheapManager.java:3284)
>         at 
> o.a.i.i.processors.cache.IgniteCacheOffheapManagerImpl.tombstonesCount(IgniteCacheOffheapManagerImpl.java:366)
>         at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager.fillQueue(GridCacheOffheapManager.java:1353)
>         at 
> o.a.i.i.processors.cache.distributed.dht.topology.PartitionsEvictManager.fillEvictQueue(PartitionsEvictManager.java:378)
>         at 
> o.a.i.i.processors.cache.distributed.dht.topology.PartitionsEvictManager.access$200(PartitionsEvictManager.java:76)
>         at 
> o.a.i.i.processors.cache.distributed.dht.topology.PartitionsEvictManager$1.run(PartitionsEvictManager.java:327)
>         at o.a.i.i.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:7237)
>         at 
> o.a.i.i.processors.closure.GridClosureProcessor$1.body(GridClosureProcessor.java:826)
>         at o.a.i.i.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)
> {code}
> {code:java}
>  
> Thread [name="db-checkpoint-thread-#175", id=214, state=WAITING, blockCnt=4, 
> waitCnt=1108] Lock 
> [object=java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync@23108bcf,
>  ownerName=null, ownerId=-1] at sun.misc.Unsafe.park(Native Method) at 
> java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
>  at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
>  at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
>  at 
> java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:943)
>  at 
> o.a.i.i.processors.cache.persistence.checkpoint.CheckpointReadWriteLock.writeLock(CheckpointReadWriteLock.java:138)
>  at 
> o.a.i.i.processors.cache.persistence.checkpoint.CheckpointWorkflow.markCheckpointBegin(CheckpointWorkflow.java:271)
>  at 
> o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.doCheckpoint(Checkpointer.java:414)
>  at 
> o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.body(Checkpointer.java:272)
>  at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:119) at 
> java.lang.Thread.run(Thread.java:748)
> {code}
> {code:java}
>  
> Thread [name="sys-#152", id=185, state=WAITING, blockCnt=47, waitCnt=115] 
> Lock [object=java.util.concurrent.CountDownLatch$Sync@1b1a9e5a, 
> ownerName=null, ownerId=-1] at sun.misc.Unsafe.park(Native Method) at 
> java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
>  at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997)
>  at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304)
>  at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231) at 
> o.a.i.i.util.IgniteUtils.await(IgniteUtils.java:8026) at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.init0(GridCacheOffheapManager.java:2422)
>  at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.init(GridCacheOffheapManager.java:2588)
>  at 
> o.a.i.i.processors.cache.persistence.GridCacheOffheapManager.restorePartitionStates(GridCacheOffheapManager.java:710)
>  at 
> o.a.i.i.processors.cache.persistence.GridCacheDatabaseSharedManager.lambda$beforeExchange$38edadb$1(GridCacheDatabaseSharedManager.java:1370)
>  at 
> o.a.i.i.processors.cache.persistence.GridCacheDatabaseSharedManager$$Lambda$871/1867718411.apply(Unknown
>  Source) at o.a.i.i.util.IgniteUtils.lambda$null$1(IgniteUtils.java:11586) at 
> o.a.i.i.util.IgniteUtils$$Lambda$770/178100001.call(Unknown Source) at 
> java.util.concurrent.FutureTask.run(FutureTask.java:266) 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)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to