[ https://issues.apache.org/jira/browse/IGNITE-19866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Pereslegin updated IGNITE-19866: -------------------------------------- Description: PrepareService failed to prepare a plan for the next query (if table has no PK column). {code:java} DELETE FROM tbl WHERE id = 1 {code} Uncomment DELETE statement for parametrized test {{{}PrepareServiceSelfTest.queryCache{}}}, then run. Stacktrace: {noformat} Caused by: java.lang.AssertionError at org.apache.calcite.util.mapping.Mappings.create(Mappings.java:67) at org.apache.calcite.sql2rel.RelFieldTrimmer.dummyProject(RelFieldTrimmer.java:562) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:508) 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) at org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimChild(RelFieldTrimmer.java:225) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:1131) 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) at org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) at org.apache.calcite.sql2rel.RelFieldTrimmer.trim(RelFieldTrimmer.java:170) at org.apache.calcite.sql2rel.SqlToRelConverter.trimUnusedFields(SqlToRelConverter.java:554) at org.apache.ignite.internal.sql.engine.prepare.IgnitePlanner.trimUnusedFields(IgnitePlanner.java:389) at org.apache.ignite.internal.sql.engine.prepare.PlannerHelper.optimize(PlannerHelper.java:99) at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710) at org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:290) at org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:287) at org.apache.ignite.internal.sql.engine.prepare.PrepareServiceImpl.lambda$prepareDml$7(PrepareServiceImpl.java:325) {noformat} was: PrepareService failed to prepare a plan for the next query. {code:java} DELETE FROM tbl WHERE id = 1 {code} Uncomment DELETE statement for parametrized test {{PrepareServiceSelfTest.queryCache}}, then run. Stacktrace: {noformat} Caused by: java.lang.AssertionError at org.apache.calcite.util.mapping.Mappings.create(Mappings.java:67) at org.apache.calcite.sql2rel.RelFieldTrimmer.dummyProject(RelFieldTrimmer.java:562) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:508) 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) at org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimChild(RelFieldTrimmer.java:225) at org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:1131) 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) at org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) at org.apache.calcite.sql2rel.RelFieldTrimmer.trim(RelFieldTrimmer.java:170) at org.apache.calcite.sql2rel.SqlToRelConverter.trimUnusedFields(SqlToRelConverter.java:554) at org.apache.ignite.internal.sql.engine.prepare.IgnitePlanner.trimUnusedFields(IgnitePlanner.java:389) at org.apache.ignite.internal.sql.engine.prepare.PlannerHelper.optimize(PlannerHelper.java:99) at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710) at org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:290) at org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:287) at org.apache.ignite.internal.sql.engine.prepare.PrepareServiceImpl.lambda$prepareDml$7(PrepareServiceImpl.java:325) {noformat} > Sql. Failed to optimize DELETE query plan. > ------------------------------------------ > > Key: IGNITE-19866 > URL: https://issues.apache.org/jira/browse/IGNITE-19866 > Project: Ignite > Issue Type: Bug > Components: sql > Reporter: Andrey Mashenkov > Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > > PrepareService failed to prepare a plan for the next query (if table has no > PK column). > {code:java} > DELETE FROM tbl WHERE id = 1 > {code} > Uncomment DELETE statement for parametrized test > {{{}PrepareServiceSelfTest.queryCache{}}}, then run. > Stacktrace: > {noformat} > Caused by: java.lang.AssertionError > at org.apache.calcite.util.mapping.Mappings.create(Mappings.java:67) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.dummyProject(RelFieldTrimmer.java:562) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:508) > 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.trimChild(RelFieldTrimmer.java:225) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:1131) > 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.apache.calcite.util.ReflectUtil$2.invoke(ReflectUtil.java:532) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:283) > at > org.apache.calcite.sql2rel.RelFieldTrimmer.trim(RelFieldTrimmer.java:170) > at > org.apache.calcite.sql2rel.SqlToRelConverter.trimUnusedFields(SqlToRelConverter.java:554) > at > org.apache.ignite.internal.sql.engine.prepare.IgnitePlanner.trimUnusedFields(IgnitePlanner.java:389) > at > org.apache.ignite.internal.sql.engine.prepare.PlannerHelper.optimize(PlannerHelper.java:99) > at > java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710) > at > org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:290) > at > org.apache.ignite.internal.sql.engine.planner.PrepareServiceSelfTest$QueryOptimizer.apply(PrepareServiceSelfTest.java:287) > at > org.apache.ignite.internal.sql.engine.prepare.PrepareServiceImpl.lambda$prepareDml$7(PrepareServiceImpl.java:325) > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)