You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Nikita Amelchev (Jira)" <ji...@apache.org> on 2024/02/07 20:06:00 UTC
[jira] [Updated] (IGNITE-21492) Calcite engine: Unexpected error at query optimizer
[ https://issues.apache.org/jira/browse/IGNITE-21492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikita Amelchev updated IGNITE-21492:
-------------------------------------
Attachment: QueryTest.java
> Calcite engine: Unexpected error at query optimizer
> ---------------------------------------------------
>
> Key: IGNITE-21492
> URL: https://issues.apache.org/jira/browse/IGNITE-21492
> Project: Ignite
> Issue Type: Bug
> Reporter: Nikita Amelchev
> Priority: Major
> Labels: ise
> Attachments: QueryTest.java
>
>
> The reproducer attached. The query runs successfully on the old engine.
> {noformat}
> [2024-02-07T23:01:18,113][ERROR][test-runner-#1%calcite.QueryTest%][PrepareServiceImpl] Unexpected error at query optimizer.
> java.lang.AssertionError: null
> at org.apache.calcite.util.mapping.Mappings.create(Mappings.java:67) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.calcite.sql2rel.RelFieldTrimmer.dummyProject(RelFieldTrimmer.java:562) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:508) ~[calcite-core-1.34.0.jar:1.34.0]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_201]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_201]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_201]
> at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_201]
> at org.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.calcite.sql2rel.RelFieldTrimmer.trim(RelFieldTrimmer.java:170) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.calcite.sql2rel.SqlToRelConverter.trimUnusedFields(SqlToRelConverter.java:554) ~[calcite-core-1.34.0.jar:1.34.0]
> at org.apache.ignite.internal.processors.query.calcite.prepare.IgnitePlanner.trimUnusedFields(IgnitePlanner.java:464) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.prepare.PlannerHelper.optimize(PlannerHelper.java:95) ~[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$null$5(CalciteQueryProcessor.java:515) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.prepare.QueryPlanCacheImpl.lambda$queryPlan$0(QueryPlanCacheImpl.java:70) ~[classes/:?]
> at java.util.concurrent.ConcurrentMap.computeIfAbsent(ConcurrentMap.java:324) ~[?:1.8.0_201]
> 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:512) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.processQuery(CalciteQueryProcessor.java:632) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.parseAndProcessQuery(CalciteQueryProcessor.java:509) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor.query(CalciteQueryProcessor.java:391) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor$2.applyx(GridQueryProcessor.java:3107) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor$2.applyx(GridQueryProcessor.java:3087) ~[classes/:?]
> at org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClosureX.java:36) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:3822) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor.lambda$querySqlFields$3(GridQueryProcessor.java:3133) ~[classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuerySafe(GridQueryProcessor.java:3261) [classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor.querySqlFields(GridQueryProcessor.java:3083) [classes/:?]
> at org.apache.ignite.internal.processors.query.GridQueryProcessor.querySqlFields(GridQueryProcessor.java:3011) [classes/:?]
> at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.query(IgniteCacheProxyImpl.java:818) [classes/:?]
> at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.query(IgniteCacheProxyImpl.java:766) [classes/:?]
> at org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.query(GatewayProtectedCacheProxy.java:398) [classes/:?]
> at org.apache.ignite.internal.processors.query.calcite.QueryTest.testLength(QueryTest.java:41) [test-classes/:?]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_201]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_201]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_201]
> at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_201]
> 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:2499) [test-classes/:?]
> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]
> [2024-02-07T23:01:18,130][ERROR][test-runner-#1%calcite.QueryTest%][PrepareServiceImpl] Root: null
> Original rel:
> Sets:
> Graphviz:
> digraph G {
> root [style=filled,label="Root"];
> root -> subsetError when dumping plan state:
> java.lang.NullPointerException: planner.root
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)