[ https://issues.apache.org/jira/browse/IGNITE-11589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16798390#comment-16798390 ]
Ignite TC Bot commented on IGNITE-11589: ---------------------------------------- {panel:title=--> Run :: All: No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *--> Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=3372212&buildTypeId=IgniteTests24Java8_RunAll] > GridDhtPartitionsExchangeFuture remained incompleted in some circumstances > -------------------------------------------------------------------------- > > Key: IGNITE-11589 > URL: https://issues.apache.org/jira/browse/IGNITE-11589 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.7 > Reporter: Vyacheslav Koptilin > Assignee: Vyacheslav Koptilin > Priority: Major > Fix For: 2.8 > > Time Spent: 10m > Remaining Estimate: 0h > > {{GridDhtPartitionsExchangeFuture#onDone}} contains a piece of code that > should be executed before {{GridFutureAdapter#onDone}} is called and so, > in case of an exception is thrown by that code, exchange future is not > completed and, therefore, it may cause a deadlock. > the following stack trace can be used as an example of that behavior: > {noformat} > [GridDhtPartitionsExchangeFuture] Failed to reinitialize local partitions > (rebalancing will be stopped): GridDhtPartitionExchangeId [...msg=Node left: > TcpDiscoveryNode [ ], type=NODE_LEFT] > class org.apache.ignite.IgniteException: null > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.detectLostPartitions(GridDhtPartitionsExchangeFuture.java:3152) > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onDone(GridDhtPartitionsExchangeFuture.java > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.finishExchangeOnCoordinator(GridDhtPartitionsExchangeFuture.java:3549) > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onAllReceived(GridDhtPartitionsExchangeFuture.java:3301) > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.distributedExchange(GridDhtPartitionsExchangeFuture.java:1516) > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:849) > at > org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2878) > at > org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2727) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120) > at java.lang.Thread.run(Thread.java:745) > Caused by: class > org.apache.ignite.internal.IgniteInterruptedCheckedException: null > at > org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:10846) > at > org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.detectLostPartitions(GridDhtPartitionsExchangeFuture.java:3135) > ... 9 more > Caused by: java.lang.InterruptedException > at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:404) > at java.util.concurrent.FutureTask.get(FutureTask.java:191) > at > org.apache.ignite.internal.util.IgniteUtils$Batch.result(IgniteUtils.java:10947) > at > org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:10836) > ... 10 more{noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)