[teiid-issues] [JBoss JIRA] (TEIID-3878) java.lang.Integer cannot be cast to java.math.BigDecimal

Steven Hawkins (JIRA) issues at jboss.org
Mon Oct 31 09:25:01 EDT 2016


     [ https://issues.jboss.org/browse/TEIID-3878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins closed TEIID-3878.
---------------------------------


> java.lang.Integer cannot be cast to java.math.BigDecimal
> --------------------------------------------------------
>
>                 Key: TEIID-3878
>                 URL: https://issues.jboss.org/browse/TEIID-3878
>             Project: Teiid
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 8.11.3
>            Reporter: Mark Tawk
>            Assignee: Steven Hawkins
>            Priority: Critical
>         Attachments: TEIID-3878.sql
>
>
> I'm using Teiid 8.11.3 with oracle translator.
> I have an aggregated query using teiid materialized views with the following simplified criteria:
> (CASE  WHEN  ( "table1"."field1" = 1 ) THEN "table2"."yearfield" ELSE null END  IN  (2014) ) 
> The above criteria is reproducing a ClassCastException Integer cannot be cast to BigDecimal
> if I change the criteria to the following, it passes without a problem:
> ("table2"."yearfield" IN  (2014) )
> Here is the error stack:
> java.lang.ClassCastException: java.lang.Integer cannot be cast to java.math.BigDecimal
> 	at java.math.BigDecimal.compareTo(BigDecimal.java:219)
> 	at org.teiid.query.sql.symbol.Constant$2.compare(Constant.java:99)
> 	at org.teiid.query.eval.Evaluator.compare(Evaluator.java:581)
> 	at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:322)
> 	at org.teiid.query.eval.Evaluator.internalEvaluateTVL(Evaluator.java:236)
> 	at org.teiid.query.eval.Evaluator.evaluateTVL(Evaluator.java:225)
> 	at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:219)
> 	at org.teiid.query.processor.relational.JoinNode.matchesCriteria(JoinNode.java:353)
> 	at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.process(EnhancedSortMergeJoinStrategy.java:460)
> 	at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:227)
> 	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278)
> 	at org.teiid.query.processor.BatchCollector$BatchProducerTupleSource.nextTuple(BatchCollector.java:94)
> 	at org.teiid.query.processor.relational.GroupingNode.groupSortPhase(GroupingNode.java:490)
> 	at org.teiid.query.processor.relational.GroupingNode.nextBatchDirect(GroupingNode.java:366)
> 	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278)
> 	at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:148)
> 	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278)
> 	at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145)
> 	at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> 	at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 	at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
> 	at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146)
> 	at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:457)
> 	at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:339)
> 	at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> 	at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:267)
> 	at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:306)
> 	at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:238)
> 	at sun.reflect.GeneratedMethodAccessor260.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:175)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> 	at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
> 	at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:260)
> 	at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:173)
> 	at com.sun.proxy.$Proxy31.executeRequest(Unknown Source)
> 	at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:667)
> 	at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:533)
> 	at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:1068)
> 	at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:320)



--
This message was sent by Atlassian JIRA
(v7.2.2#72004)


More information about the teiid-issues mailing list