You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladislav Pyatkov (Jira)" <ji...@apache.org> on 2021/10/19 19:18:00 UTC

[jira] [Updated] (IGNITE-15777) Specific issues when transaction stuck

     [ https://issues.apache.org/jira/browse/IGNITE-15777?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vladislav Pyatkov updated IGNITE-15777:
---------------------------------------
    Description: 
1) Exchange hangs on client node, because implicit transaction stay in the deadlock.
{noformat}
sys-#111494%GRID%" #139376 prio=5 os_prio=0 cpu=838.82ms elapsed=2482.84s allocated=165M defined_classes=0 tid=0x00007fe8ac30d000 nid=0x9b19 sleeping [0x00007fe892eec000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(java.base@11.0.10/Native Method)
    at org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:8156)
    at org.apache.ignite.internal.processors.cache.GridCacheGateway.onStopped(GridCacheGateway.java:323)
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.stopGateway(GridCacheProcessor.java:2601)
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.lambda$processCacheStopRequestOnExchangeDone$629e8679$1(GridCacheProcessor.java:2797)
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor$$Lambda$1602/0x0000000840a49040.apply(Unknown Source)
    at org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:11572)
    at org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:11474)
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.processCacheStopRequestOnExchangeDone(GridCacheProcessor.java:2776)
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onExchangeDone(GridCacheProcessor.java:2906)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onDone(GridDhtPartitionsExchangeFuture.java:2514)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.processFullMessage(GridDhtPartitionsExchangeFuture.java:4765)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.access$1500(GridDhtPartitionsExchangeFuture.java:160)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$4.apply(GridDhtPartitionsExchangeFuture.java:4434)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$4.apply(GridDhtPartitionsExchangeFuture.java:4422)
    at org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(GridFutureAdapter.java:407)
    at org.apache.ignite.internal.util.future.GridFutureAdapter.listen(GridFutureAdapter.java:362)
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onReceiveFullMessage(GridDhtPartitionsExchangeFuture.java:4422)
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.processFullPartitionUpdate(GridCachePartitionExchangeManager.java:2017)
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$3.onMessage(GridCachePartitionExchangeManager.java:472)
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$3.onMessage(GridCachePartitionExchangeManager.java:459)
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$MessageHandler.apply(GridCachePartitionExchangeManager.java:3875)
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$MessageHandler.apply(GridCachePartitionExchangeManager.java:3854)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1142)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:591)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:392)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:318)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$100(GridCacheIoManager.java:109)
    at org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:308)
    at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1719)
    at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1326)
    at org.apache.ignite.internal.managers.communication.GridIoManager.access$4600(GridIoManager.java:157)
    at org.apache.ignite.internal.managers.communication.GridIoManager$8.execute(GridIoManager.java:1211)
    at org.apache.ignite.internal.managers.communication.TraceRunnable.run(TraceRunnable.java:54)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@11.0.10/ThreadPoolExecutor.java:1128)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@11.0.10/ThreadPoolExecutor.java:628)
    at java.lang.Thread.run(java.base@11.0.10/Thread.java:834)
	
"http-nio-8080-exec-13" #27351 daemon prio=5 os_prio=0 cpu=958477.38ms elapsed=204274.71s allocated=261G defined_classes=126 tid=0x00007fe5dc009800 nid=0x220 waiting on condition  [0x00007fe95b154000]
   java.lang.Thread.State: WAITING (parking)
    at jdk.internal.misc.Unsafe.park(java.base@11.0.10/Native Method)
    at java.util.concurrent.locks.LockSupport.park(java.base@11.0.10/LockSupport.java:323)
    at org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:186)
    at org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:149)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter$16.op(GridCacheAdapter.java:2096)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter$16.op(GridCacheAdapter.java:2094)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter.syncOp(GridCacheAdapter.java:3878)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put0(GridCacheAdapter.java:2094)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2074)
    at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2049)
    at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.put(IgniteCacheProxyImpl.java:1310)
    at org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.put(GatewayProtectedCacheProxy.java:817)
	....
{noformat}
2) Transaction hangs on recovery, because its timeout is exceeded in the same time.

  was:
1) Exchange hangs on client node, because implicit transaction stay in the deadlock.
{noformat}Add stack here{noformat}
2) Transaction hangs on recovery, because its timeout is exceeded in the same time.


> Specific issues when transaction stuck
> --------------------------------------
>
>                 Key: IGNITE-15777
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15777
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Vladislav Pyatkov
>            Assignee: Vladislav Pyatkov
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> 1) Exchange hangs on client node, because implicit transaction stay in the deadlock.
> {noformat}
> sys-#111494%GRID%" #139376 prio=5 os_prio=0 cpu=838.82ms elapsed=2482.84s allocated=165M defined_classes=0 tid=0x00007fe8ac30d000 nid=0x9b19 sleeping [0x00007fe892eec000]
>    java.lang.Thread.State: TIMED_WAITING (sleeping)
>     at java.lang.Thread.sleep(java.base@11.0.10/Native Method)
>     at org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:8156)
>     at org.apache.ignite.internal.processors.cache.GridCacheGateway.onStopped(GridCacheGateway.java:323)
>     at org.apache.ignite.internal.processors.cache.GridCacheProcessor.stopGateway(GridCacheProcessor.java:2601)
>     at org.apache.ignite.internal.processors.cache.GridCacheProcessor.lambda$processCacheStopRequestOnExchangeDone$629e8679$1(GridCacheProcessor.java:2797)
>     at org.apache.ignite.internal.processors.cache.GridCacheProcessor$$Lambda$1602/0x0000000840a49040.apply(Unknown Source)
>     at org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:11572)
>     at org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:11474)
>     at org.apache.ignite.internal.processors.cache.GridCacheProcessor.processCacheStopRequestOnExchangeDone(GridCacheProcessor.java:2776)
>     at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onExchangeDone(GridCacheProcessor.java:2906)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onDone(GridDhtPartitionsExchangeFuture.java:2514)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.processFullMessage(GridDhtPartitionsExchangeFuture.java:4765)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.access$1500(GridDhtPartitionsExchangeFuture.java:160)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$4.apply(GridDhtPartitionsExchangeFuture.java:4434)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$4.apply(GridDhtPartitionsExchangeFuture.java:4422)
>     at org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(GridFutureAdapter.java:407)
>     at org.apache.ignite.internal.util.future.GridFutureAdapter.listen(GridFutureAdapter.java:362)
>     at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onReceiveFullMessage(GridDhtPartitionsExchangeFuture.java:4422)
>     at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.processFullPartitionUpdate(GridCachePartitionExchangeManager.java:2017)
>     at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$3.onMessage(GridCachePartitionExchangeManager.java:472)
>     at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$3.onMessage(GridCachePartitionExchangeManager.java:459)
>     at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$MessageHandler.apply(GridCachePartitionExchangeManager.java:3875)
>     at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$MessageHandler.apply(GridCachePartitionExchangeManager.java:3854)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1142)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:591)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:392)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:318)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$100(GridCacheIoManager.java:109)
>     at org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:308)
>     at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1719)
>     at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1326)
>     at org.apache.ignite.internal.managers.communication.GridIoManager.access$4600(GridIoManager.java:157)
>     at org.apache.ignite.internal.managers.communication.GridIoManager$8.execute(GridIoManager.java:1211)
>     at org.apache.ignite.internal.managers.communication.TraceRunnable.run(TraceRunnable.java:54)
>     at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@11.0.10/ThreadPoolExecutor.java:1128)
>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@11.0.10/ThreadPoolExecutor.java:628)
>     at java.lang.Thread.run(java.base@11.0.10/Thread.java:834)
> 	
> "http-nio-8080-exec-13" #27351 daemon prio=5 os_prio=0 cpu=958477.38ms elapsed=204274.71s allocated=261G defined_classes=126 tid=0x00007fe5dc009800 nid=0x220 waiting on condition  [0x00007fe95b154000]
>    java.lang.Thread.State: WAITING (parking)
>     at jdk.internal.misc.Unsafe.park(java.base@11.0.10/Native Method)
>     at java.util.concurrent.locks.LockSupport.park(java.base@11.0.10/LockSupport.java:323)
>     at org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:186)
>     at org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:149)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter$16.op(GridCacheAdapter.java:2096)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter$16.op(GridCacheAdapter.java:2094)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter.syncOp(GridCacheAdapter.java:3878)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put0(GridCacheAdapter.java:2094)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2074)
>     at org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2049)
>     at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.put(IgniteCacheProxyImpl.java:1310)
>     at org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.put(GatewayProtectedCacheProxy.java:817)
> 	....
> {noformat}
> 2) Transaction hangs on recovery, because its timeout is exceeded in the same time.



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