[ https://issues.apache.org/jira/browse/IGNITE-3874?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anton Vinogradov resolved IGNITE-3874. -------------------------------------- Resolution: Fixed Found incorrect exceprion catch, fixed. > sync putIfAbsent forever blocked on all nodes after one node is stopped > ----------------------------------------------------------------------- > > Key: IGNITE-3874 > URL: https://issues.apache.org/jira/browse/IGNITE-3874 > Project: Ignite > Issue Type: Bug > Reporter: Anton Vinogradov > Assignee: Anton Vinogradov > Fix For: 1.8 > > > First stacktrace: > Failed to send prepare response for transaction: > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.send(GridCacheIoManager.java:800) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareFuture.sendPrepareResponse(GridDhtTxPrepareFuture.java:731) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareFuture.onDone(GridDhtTxPrepareFuture.java:690) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareFuture.onError(GridDhtTxPrepareFuture.java:457) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.prepareAsync(GridDhtTxLocal.java:424) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.prepareAsync(GridDhtTxLocal.java:298) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter.prepare(IgniteTxLocalAdapter.java:594) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.salvageTx(IgniteTxManager.java:300) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.access$2200(IgniteTxManager.java:119) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject.onTimeout0(IgniteTxManager.java:2148) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject.access$2400(IgniteTxManager.java:2113) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject$2.run(IgniteTxManager.java:2188) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6540) > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$1.body(GridClosureProcessor.java:802) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > Second: > Failed to commit transaction: > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocalAdapter.finish(GridDhtTxLocalAdapter.java:750) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.finish(GridDhtTxLocal.java:649) > at > org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal.commitAsync(GridDhtTxLocal.java:549) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter.commit(IgniteTxLocalAdapter.java:585) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.salvageTx(IgniteTxManager.java:317) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager.access$2200(IgniteTxManager.java:119) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject.onTimeout0(IgniteTxManager.java:2148) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject.access$2400(IgniteTxManager.java:2113) > at > org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$NodeFailureTimeoutObject$2.run(IgniteTxManager.java:2188) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6540) > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$1.body(GridClosureProcessor.java:802) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > > and finaly we see hanged 2pc TX with state MARKED_ROLLBACK. > Rollback should happen, but doesn't happen. -- This message was sent by Atlassian JIRA (v6.3.4#6332)