[
https://issues.apache.org/jira/browse/IGNITE-18453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Mashenkov updated IGNITE-18453:
--------------------------------------
Fix Version/s: 3.0.0-beta2
> Query executor thread synchronously waits for leaders on query mapping.
> -----------------------------------------------------------------------
>
> Key: IGNITE-18453
> URL: https://issues.apache.org/jira/browse/IGNITE-18453
> Project: Ignite
> Issue Type: Improvement
> Reporter: Andrey Mashenkov
> Assignee: Maksim Zhuravkov
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-beta2
>
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> If some table/partition lost the quorum, sql-execution-pool threads may stuck
> and prevent other queries over another table/partition from being executed.
> {noformat}
> "%node3%sql-execution-pool-1@65077" daemon prio=5 tid=0x8b81 nid=NA waiting
> java.lang.Thread.State: WAITING
> at jdk.internal.misc.Unsafe.park(Unsafe.java:-1)
> at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
> at
> java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1796)
> at
> java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3128)
> at
> java.util.concurrent.CompletableFuture.waitingGet(CompletableFuture.java:1823)
> at
> java.util.concurrent.CompletableFuture.join(CompletableFuture.java:2043)
> at
> org.apache.ignite.internal.table.distributed.storage.InternalTableImpl.awaitLeaderInitialization(InternalTableImpl.java:1055)
> at
> org.apache.ignite.internal.table.distributed.storage.InternalTableImpl.assignments(InternalTableImpl.java:1004)
> at
> org.apache.ignite.internal.sql.engine.schema.IgniteTableImpl.partitionedGroup(IgniteTableImpl.java:484)
> at
> org.apache.ignite.internal.sql.engine.schema.IgniteTableImpl.colocationGroup(IgniteTableImpl.java:228)
> at
> org.apache.ignite.internal.sql.engine.metadata.IgniteMdFragmentMapping.getFragmentMapping(IgniteMdFragmentMapping.java:228)
> at
> org.apache.ignite.internal.sql.engine.metadata.IgniteMdFragmentMapping.fragmentMapping(IgniteMdFragmentMapping.java:210)
> at
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_FragmentMappingMetadataHandler.fragmentMapping_$(Unknown
> Source:-1)
> at
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_FragmentMappingMetadataHandler.fragmentMapping(Unknown
> Source:-1)
> at
> org.apache.ignite.internal.sql.engine.metadata.RelMetadataQueryEx.fragmentMapping(RelMetadataQueryEx.java:93)
> at
> org.apache.ignite.internal.sql.engine.metadata.IgniteMdFragmentMapping.fragmentMappingForMetadataQuery(IgniteMdFragmentMapping.java:70)
> at
> org.apache.ignite.internal.sql.engine.metadata.IgniteMdFragmentMapping.fragmentMapping(IgniteMdFragmentMapping.java:101)
> at
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_FragmentMappingMetadataHandler.fragmentMapping_$(Unknown
> Source:-1)
> at
> org.apache.calcite.rel.metadata.janino.GeneratedMetadata_FragmentMappingMetadataHandler.fragmentMapping(Unknown
> Source:-1)
> at
> org.apache.ignite.internal.sql.engine.metadata.RelMetadataQueryEx.fragmentMapping(RelMetadataQueryEx.java:93)
> at
> org.apache.ignite.internal.sql.engine.metadata.IgniteMdFragmentMapping.fragmentMappingForMetadataQuery(IgniteMdFragmentMapping.java:70)
> at
> org.apache.ignite.internal.sql.engine.prepare.Fragment.mapping(Fragment.java:111)
> at
> org.apache.ignite.internal.sql.engine.prepare.Fragment.map(Fragment.java:159)
> at
> org.apache.ignite.internal.sql.engine.prepare.QueryTemplate.map(QueryTemplate.java:93)
> at
> org.apache.ignite.internal.sql.engine.prepare.QueryTemplate.map(QueryTemplate.java:71)
> at
> org.apache.ignite.internal.sql.engine.prepare.AbstractMultiStepPlan.init(AbstractMultiStepPlan.java:108)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager.lambda$execute$7(ExecutionServiceImpl.java:569)
> at
> org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl$DistributedQueryManager$$Lambda$2890.610213979.run(Unknown
> Source:-1)
> at
> org.apache.ignite.internal.sql.engine.exec.QueryTaskExecutorImpl.lambda$execute$0(QueryTaskExecutorImpl.java:80)
> at
> org.apache.ignite.internal.sql.engine.exec.QueryTaskExecutorImpl$$Lambda$1902.2051055833.run(Unknown
> Source:-1)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.lang.Thread.run(Thread.java:829)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)