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

Nikolay Izhikov resolved IGNITE-16991.
--------------------------------------
    Resolution: Won't Fix

> SQL in clause with array arg fails since ignite 2.11
> ----------------------------------------------------
>
>                 Key: IGNITE-16991
>                 URL: https://issues.apache.org/jira/browse/IGNITE-16991
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Nikolay Izhikov
>            Priority: Major
>
> Reproducer.
> Test passes on ignite-2.10 and fails on ignite-2.11
> {code:java}
> /** */
> public class SqlInQueryTest extends GridCommonAbstractTest {
>     /** */
>     private static IgniteEx server;
>     /** {@inheritDoc} */
>     @Override protected void beforeTestsStarted() throws Exception {
>         super.beforeTestsStarted();
>         server = startGrid(0);
>     }
>     /** */
>     @Test
>     public void testSelectWithInClause() throws Exception {
>         sql("CREATE TABLE T1(ID VARCHAR, IID VARCHAR, DATA VARCHAR, PRIMARY 
> KEY(ID, IID))", null);
>         for (int i = 0; i < 10; i++)
>             sql(
>                 "INSERT INTO T1(ID, IID, DATA) VALUES(?, ?, ?)",
>                 new Object[] {String.valueOf(i), String.valueOf(i % 3), "just 
> data"}
>             );
>         assertEquals(10, sql("SELECT ID, IID FROM T1", null).size());
>         // One ID inside IN clause.
>         assertEquals(1, sql(
>             "SELECT IID FROM T1 WHERE ID IN (?) AND IID = ?",
>             new Object[] {Arrays.asList("1").toArray(), "1"}
>         ).size());
>         // Two ID inside IN clause.
>         assertEquals(2, sql(
>             "SELECT IID FROM T1 WHERE ID IN ('1', '4') AND IID = ?",
>             new Object[] {"1"}
>         ).size());
>         // Two ID inside IN clause. Pass as patameters.
>         //assertEquals(2, sql(
>         //    "SELECT IID FROM T1 WHERE ID IN (?) AND IID = ?",
>         //    new Object[] {Arrays.asList("1", "4").toArray(), "1"}).size()
>         //);
>     }
>     /** */
>     private List<List<?>> sql(String sqlText, Object[] args) {
>         return server.context().query().querySqlFields(
>             new 
> SqlFieldsQuery(sqlText).setDistributedJoins(true).setArgs(args), true
>         ).getAll();
>     }
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to