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

Sergey Grimstad reassigned IGNITE-9162:
---------------------------------------

    Assignee: Sergey Grimstad

> Query returns ICE: org.h2.table.TableView cannot be cast
> --------------------------------------------------------
>
>                 Key: IGNITE-9162
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9162
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>    Affects Versions: 2.4
>            Reporter: Sergey Kozlov
>            Assignee: Sergey Grimstad
>            Priority: Critical
>             Fix For: 2.7
>
>         Attachments: caches.xml, client.xml, policies.xml, server.xml
>
>
> 1. Start 1 Ignite node {{bin/ignite.sh server.xml -v -J-DCONSISTENT_ID=node1}}
> 2. Start sqlline {{bin/sqlline.sh -u 
> jdbc:ignite:thin://127.0.0.1/?distributedJoins=true}}
> 3. Execute statements:
> {noformat}
> 0: jdbc:ignite:thin://127.0.0.1/> CREATE TABLE t1 ( id INT NOT NULL, int_col1 
> INT NOT NULL, PRIMARY KEY (id)) WITH "TEMPLATE=partitioned";
> No rows affected (0,151 seconds)
> 0: jdbc:ignite:thin://127.0.0.1/> INSERT INTO t1 (id,int_col1) VALUES 
> (1,0),(2,0),(3,0),(4,0);
> 4 rows affected (0,052 seconds)
> 0: jdbc:ignite:thin://127.0.0.1/> SELECT * FROM ( SELECT * FROM t1 WHERE 
> int_col1  > 0 ORDER BY id ) WHERE int_col1  = 1
>  ORDER BY id;
> Error: javax.cache.CacheException: class 
> org.apache.ignite.IgniteCheckedException: org.h2.table.TableView cannot be 
> cast
>  to org.apache.ignite.internal.processors.query.h2.opt.GridH2Table 
> (state=50000,code=0)
> 0: jdbc:ignite:thin://127.0.0.1/>
> {noformat}
> Node log:
> {noformat}
> [12:39:38,162][SEVERE][client-connector-#50][JdbcRequestHandler] Failed to 
> execute SQL query [reqId=0, req=JdbcQueryExecuteRequest [schemaName=PUBLIC, 
> pageSize=1024, maxRows=0, sqlQry=SELECT * FROM ( SELECT * FROM t1 WHERE 
> int_col1  > 0 ORDER BY id ) WHERE int_col1  = 1 ORDER BY id, args=[], 
> stmtType=ANY_STATEMENT_TYPE]]
> javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException: 
> org.h2.table.TableView cannot be cast to 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.querySqlFields(GridQueryProcessor.java:2047)
>       at 
> org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.executeQuery(JdbcRequestHandler.java:456)
>       at 
> org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.handle(JdbcRequestHandler.java:203)
>       at 
> org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:160)
>       at 
> org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:44)
>       at 
> org.apache.ignite.internal.util.nio.GridNioFilterChain$TailFilter.onMessageReceived(GridNioFilterChain.java:279)
>       at 
> org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedMessageReceived(GridNioFilterAdapter.java:109)
>       at 
> org.apache.ignite.internal.util.nio.GridNioAsyncNotifyFilter$3.body(GridNioAsyncNotifyFilter.java:97)
>       at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>       at 
> org.apache.ignite.internal.util.worker.GridWorkerPool$1.run(GridWorkerPool.java:70)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: class org.apache.ignite.IgniteCheckedException: 
> org.h2.table.TableView cannot be cast to 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:2601)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.querySqlFields(GridQueryProcessor.java:2044)
>       ... 12 more
> Caused by: java.lang.ClassCastException: org.h2.table.TableView cannot be 
> cast to org.apache.ignite.internal.processors.query.h2.opt.GridH2Table
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.extractPartitionFromEquality(GridSqlQuerySplitter.java:2336)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.extractPartition(GridSqlQuerySplitter.java:2268)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.derivePartitionsFromQuery(GridSqlQuerySplitter.java:2250)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.splitSelect(GridSqlQuerySplitter.java:1539)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.splitQueryModel(GridSqlQuerySplitter.java:1227)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.splitQuery(GridSqlQuerySplitter.java:306)
>       at 
> org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.split(GridSqlQuerySplitter.java:224)
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.split(IgniteH2Indexing.java:1936)
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.parseAndSplit(IgniteH2Indexing.java:1898)
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.querySqlFields(IgniteH2Indexing.java:1650)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor$4.applyx(GridQueryProcessor.java:2035)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor$4.applyx(GridQueryProcessor.java:2030)
>       at 
> org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClosureX.java:36)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:2578)
>       ... 13 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to