You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "liyang (JIRA)" <ji...@apache.org> on 2016/05/31 23:37:12 UTC

[jira] [Commented] (KYLIN-1727) Calcite throws "java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Byte"

    [ https://issues.apache.org/jira/browse/KYLIN-1727?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15308867#comment-15308867 ] 

liyang commented on KYLIN-1727:
-------------------------------

[~debugger87], do you still have the cube json? That can help debug.

I probably know why and it should not be difficult to fix.

> Calcite throws "java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Byte"
> ----------------------------------------------------------------------------------------------------
>
>                 Key: KYLIN-1727
>                 URL: https://issues.apache.org/jira/browse/KYLIN-1727
>             Project: Kylin
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: v1.5.0, 1.x-HBase1.1.3
>            Reporter: Chaozhong Yang
>            Assignee: liyang
>              Labels: newbie
>   Original Estimate: 336h
>  Remaining Estimate: 336h
>
> I got error from Kylin when try a simple sql like: select colum_a, sum(column_b) from table group by column_a
> The stack trace is:
> ```
> Caused by: java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Byte
>         at Baz$4.apply(Unknown Source)
>         at Baz$4.apply(Unknown Source)
>         at Baz$4.apply(Unknown Source)
>         at org.apache.calcite.linq4j.EnumerableDefaults.groupBy_(EnumerableDefaults.java:825)
>         at org.apache.calcite.linq4j.EnumerableDefaults.groupBy(EnumerableDefaults.java:754)
>         at org.apache.calcite.linq4j.DefaultEnumerable.groupBy(DefaultEnumerable.java:302)
>         at Baz.bind(Unknown Source)
>         at org.apache.calcite.jdbc.CalcitePrepare$CalciteSignature.enumerable(CalcitePrepare.java:326)
>         at org.apache.calcite.jdbc.CalciteConnectionImpl.enumerable(CalciteConnectionImpl.java:281)
>         at org.apache.calcite.jdbc.CalciteMetaImpl._createIterable(CalciteMetaImpl.java:545)
>         at org.apache.calcite.jdbc.CalciteMetaImpl.createIterable(CalciteMetaImpl.java:536)
>         at org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:187)
>         at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:65)
>         at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:44)
>         at org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:566)
>         at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:578)
>         at org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:571)
>         at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:135)
>         ... 79 more
> ```
> In addition, the column "column_b" was declared as "tinyint" in hive and sum of culumn_b may be greater than 10 billion. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)