[
https://issues.apache.org/jira/browse/IGNITE-26381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladimir Steshin updated IGNITE-26381:
--------------------------------------
Labels: calcite ignite-2 ise (was: )
> Calcite. Incorrect cast of dynamic array-parameter to ARRAY field
> -----------------------------------------------------------------
>
> Key: IGNITE-26381
> URL: https://issues.apache.org/jira/browse/IGNITE-26381
> Project: Ignite
> Issue Type: Bug
> Reporter: Vladimir Steshin
> Priority: Minor
> Labels: calcite, ignite-2, ise
>
> Found while fixing IGNITE-25765.
>
> {*}Reproducer{*}:
> {code:java}
> public class DataTypesTest extends AbstractBasicIntegrationTransactionalTest {
> /** */
> @Test
> public void test(){
> sql("CREATE TABLE tt(val INTEGER ARRAY) WITH " + atomicity());
> // Passes
> //sql("INSERT INTO tt values(?)", F.asList(1,2,3));
> sql("INSERT INTO tt values(?)", new int[]{1,2,3});
> }
> } {code}
> {*}Error{*}:
> {code:java}
> Caused by: java.lang.ClassCastException: class [I cannot be cast to class
> java.util.List ([I and java.util.List are in module java.base of loader
> 'bootstrap') at SC.execute(Unknown Source) at
> org.apache.ignite.internal.processors.query.calcite.exec.exp.ExpressionFactoryImpl$ProjectImpl.apply(ExpressionFactoryImpl.java:718)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ProjectNode.push(ProjectNode.java:63)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ScanNode.processNextBatch(ScanNode.java:168)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ScanNode.push(ScanNode.java:142)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ScanNode.request(ScanNode.java:95)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ProjectNode.request(ProjectNode.java:54)
> at
> org.apache.ignite.internal.processors.query.calcite.exec.rel.ModifyNode.tryEnd(ModifyNode.java:168)
> {code}
> We either should not allow primitive arrays as parameters with a proper
> validation error or cast them correctly.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)