Tianhao Zhao created KYLIN-2824: ----------------------------------- Summary: 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
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)