You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "Tianhao Zhao (JIRA)" <ji...@apache.org> on 2017/08/31 06:46:02 UTC
[jira] [Commented] (KYLIN-2824) Parse Boolean type in JDBC driver
[ https://issues.apache.org/jira/browse/KYLIN-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16148530#comment-16148530 ]
Tianhao Zhao commented on KYLIN-2824:
-------------------------------------
patch attached
> Parse Boolean type in JDBC driver
> ---------------------------------
>
> Key: KYLIN-2824
> URL: https://issues.apache.org/jira/browse/KYLIN-2824
> Project: Kylin
> Issue Type: Bug
> Components: Driver - JDBC
> Reporter: Tianhao Zhao
> Priority: Minor
> Attachments: KYLIN-2824.patch
>
>
> Exception below is thrown when querying kylin with Saiku as front end, or when retrieving value from getBoolean method in jdbc driver.
> That's because KylinClient in jdbc module dose not parse value properly when dimension is boolean type.
> Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean
> at org.apache.kylin.jdbc.shaded.org.apache.calcite.avatica.util.AbstractCursor$BooleanAccessor.getBoolean(AbstractCursor.java:463)
> at org.apache.kylin.jdbc.shaded.org.apache.calcite.avatica.util.AbstractCursor$BooleanAccessor.getLong(AbstractCursor.java:468)
> at org.apache.kylin.jdbc.shaded.org.apache.calcite.avatica.util.AbstractCursor$AccessorImpl.getInt(AbstractCursor.java:304)
> at org.apache.kylin.jdbc.shaded.org.apache.calcite.avatica.AvaticaResultSet.getInt(AvaticaResultSet.java:252)
> at org.apache.commons.dbcp.DelegatingResultSet.getInt(DelegatingResultSet.java:225)
> at org.apache.commons.dbcp.DelegatingResultSet.getInt(DelegatingResultSet.java:225)
> at mondrian.rolap.SqlStatement$4.get(SqlStatement.java:418)
> at mondrian.rolap.SqlStatement$1.get(SqlStatement.java:394)
> at mondrian.rolap.SqlTupleReader$Target.internalAddRow(SqlTupleReader.java:260)
> at mondrian.rolap.SqlTupleReader$Target.addRow(SqlTupleReader.java:172)
> at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:545)
> at mondrian.rolap.SqlTupleReader.readTuples(SqlTupleReader.java:690)
> at mondrian.rolap.RolapNativeSet$SetEvaluator.executeList(RolapNativeSet.java:260)
> at mondrian.rolap.RolapNativeSet$SetEvaluator.execute(RolapNativeSet.java:200)
> at mondrian.olap.fun.NonEmptyCrossJoinFunDef$1.evaluateList(NonEmptyCrossJoinFunDef.java:80)
> at mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71)
> at mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:184)
> at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:857)
> at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:693)
> at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:649)
> at mondrian.rolap.RolapResult.<init>(RolapResult.java:279)
> at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:500)
> ... 7 more
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)