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

Nikolay Izhikov updated IGNITE-24730:
-------------------------------------
    Labels: ise tpch  (was: )

> Calcite. Exception in TPC-H query #20
> -------------------------------------
>
>                 Key: IGNITE-24730
>                 URL: https://issues.apache.org/jira/browse/IGNITE-24730
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Sergey Korotkov
>            Priority: Major
>              Labels: ise, tpch
>         Attachments: TpchQ20Test.java
>
>
> The below exception occurs on planning.
> Reproducer is attached
> To run it this PR needs to be merged: 
> [https://github.com/apache/ignite/pull/11906]
> {noformat}
> [2025-03-07T17:27:34,552][ERROR][test-runner-#494%tpch.TpchQ20Test%][PrepareServiceImpl]
>  Unexpected error at query optimizer.
>  java.lang.ArrayIndexOutOfBoundsException: Index 7 out of bounds for length 7
>       at 
> org.apache.calcite.util.mapping.Mappings$PartialFunctionImpl.getTargetOpt(Mappings.java:1780)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.ignite.internal.processors.query.calcite.trait.DistributionTrait.apply(DistributionTrait.java:161)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.rel.IgniteFilter.passThroughDistribution(IgniteFilter.java:197)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.trait.TraitUtils.lambda$passThrough$1(TraitUtils.java:415)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.trait.TraitUtils$PropagationContext.propagate(TraitUtils.java:545)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.trait.TraitUtils.passThrough(TraitUtils.java:415)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.trait.TraitsAwareIgniteRel.passThroughTraits(TraitsAwareIgniteRel.java:41)
>  ~[classes/:?]
>       at 
> org.apache.calcite.rel.PhysicalNode.passThrough(PhysicalNode.java:79) 
> ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.RelSubset.passThrough(RelSubset.java:509) 
> ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.TopDownRuleDriver.convert(TopDownRuleDriver.java:586)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.TopDownRuleDriver.getOptimizeInputTask(TopDownRuleDriver.java:549)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.TopDownRuleDriver.access$400(TopDownRuleDriver.java:51)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.TopDownRuleDriver$OptimizeGroup.perform(TopDownRuleDriver.java:351)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.TopDownRuleDriver.drive(TopDownRuleDriver.java:109)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.plan.volcano.VolcanoPlanner.findBestExp(VolcanoPlanner.java:524)
>  ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.calcite.tools.Programs$RuleSetProgram.run(Programs.java:328) 
> ~[calcite-core-1.37.0.jar:1.37.0]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.IgnitePlanner.transform(IgnitePlanner.java:381)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.PlannerHelper.optimize(PlannerHelper.java:107)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.PrepareServiceImpl.prepareQuery(PrepareServiceImpl.java:168)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.PrepareServiceImpl.prepareSingle(PrepareServiceImpl.java:94)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.lambda$parseAndProcessQuery$5(CalciteQueryProcessor.java:553)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.QueryPlanCacheImpl.lambda$queryPlan$0(QueryPlanCacheImpl.java:70)
>  ~[classes/:?]
>       at 
> java.base/java.util.concurrent.ConcurrentMap.computeIfAbsent(ConcurrentMap.java:330)
>  ~[?:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.prepare.QueryPlanCacheImpl.queryPlan(QueryPlanCacheImpl.java:70)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.lambda$parseAndProcessQuery$6(CalciteQueryProcessor.java:550)
>  ~[classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.processQuery(CalciteQueryProcessor.java:701)
>  [classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.parseAndProcessQuery(CalciteQueryProcessor.java:547)
>  [classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.query(CalciteQueryProcessor.java:420)
>  [classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.integration.AbstractBasicIntegrationTest.sql(AbstractBasicIntegrationTest.java:241)
>  [test-classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.integration.AbstractBasicIntegrationTest.sql(AbstractBasicIntegrationTest.java:236)
>  [test-classes/:?]
>       at 
> org.apache.ignite.internal.processors.query.calcite.integration.tpch.TpchQ20Test.testQ20(TpchQ20Test.java:37)
>  [test-classes/:?]
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native 
> Method) ~[?:?]
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>  ~[?:?]
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  ~[?:?]
>       at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
>       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>  [junit-4.12.jar:4.12]
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>  [junit-4.12.jar:4.12]
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>  [junit-4.12.jar:4.12]
>       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>  [junit-4.12.jar:4.12]
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2508)
>  [test-classes/:?]
>       at java.base/java.lang.Thread.run(Thread.java:829) [?:?]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to