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/06/28 09:13:00 UTC
[jira] [Created] (IGNITE-15017) Contention in lock on Compound
future
Vladislav Pyatkov created IGNITE-15017:
------------------------------------------
Summary: Contention in lock on Compound future
Key: IGNITE-15017
URL: https://issues.apache.org/jira/browse/IGNITE-15017
Project: Ignite
Issue Type: Improvement
Reporter: Vladislav Pyatkov
During analyze of JFR I noticed that the threads waiting long time on getting compounds on the future.
It happened on an exclusive checkpoint phase and have a negative impact to transactions (they increased to a hundred milliseconds).
This stack held the checkpoint workers:
{noformat}
org.apache.ignite.internal.util.future.GridCompoundFuture.futuresCount() line: 358 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridCompoundFuture.checkComplete() line: 282 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridCompoundFuture.apply(IgniteInternalFuture) line: 142 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridCompoundFuture.apply(Object) line: 43 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(IgniteInClosure) line: 407 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.unblock(Object) line: 355 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.unblockAll(GridFutureAdapter$Node) line: 343 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(Object, Throwable, boolean) line: 520 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(Object, Throwable) line: 498 2 0,036 272 938 246
org.apache.ignite.internal.util.future.GridFutureAdapter.onDone() line: 464 2 0,036 272 938 246
org.apache.ignite.internal.util.IgniteUtils.lambda$wrapIgniteFuture$3(Runnable, GridFutureAdapter) line: 11730 2 0,036 272 938 246
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker) line: 1149 2 0,036 272 938 246
java.util.concurrent.ThreadPoolExecutor$Worker.run() line: 624 2 0,036 272 938 246
java.lang.Thread.run() line: 748 2 0,036 272 938 246
{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)