Hi Divye, are you using Mondrian 4 (the lagunitas branch) with Kylin dialect? I had the same issue with Mondrian version < 4. Take a look to the ticket and comments: https://issues.apache.org/jira/browse/KYLIN-611 <https://issues.apache.org/jira/browse/KYLIN-611> .
In Mondrian 4, I no longer have this error. Best regards, Sébastien Jelsch > Am 08.06.2015 um 15:40 schrieb divye sheth <[email protected]>: > > Thanks Sébastien, I built Kylin with the changes you mentioned in the git > branch and was able to connect to Kylin via Mondrian. > One roadblock out of the way :-) > After connecting though I tried executing queries via Mondrian but no luck > there. Just pasting the stack trace for your reference, > I still have to debug why it is throwing an execption. > > org.eigenbase.rex.RexLiteral cannot be cast to org.eigenbase.rex.RexCall > while executing SQL: "select "KYLIN_CATEGORY_GROUPINGS"."META_CATEG_NAME" > as "c0" from "KYLIN_SALES" as "KYLIN_SALES", "KYLIN_CATEGORY_GROUPINGS" as > "KYLIN_CATEGORY_GROUPINGS" where "KYLIN_SALES"."LEAF_CATEG_ID" = > "KYLIN_CATEGORY_GROUPINGS"."LEAF_CATEG_ID" group by > "KYLIN_CATEGORY_GROUPINGS"."META_CATEG_NAME" LIMIT 50000" > > The above exception occurs with Kylin UI as well. The query given above is > generated by Mondrian. If anyone has an idea about the cause > of the exception please do let me know. In the meantime I would try and > debug this issue. > > Thanks! > Divye Sheth > > On Mon, Jun 8, 2015 at 4:19 PM, dong wang <[email protected]> wrote: > >> wonderful job~ very interested in this topic~ >> >> 2015-06-08 18:27 GMT+08:00 Sébastien Jelsch <[email protected]>: >> >>> I found the reason for this issue ( >>> https://issues.apache.org/jira/browse/KYLIN-819 < >>> https://issues.apache.org/jira/browse/KYLIN-819> ) and fixed it ( >>> https://github.com/apache/incubator-kylin/pull/9 < >>> https://github.com/apache/incubator-kylin/pull/9> ). >>> >>> And I have some good news: With Mondrian 4 ( the lagunitas branch: >>> https://github.com/pentaho/mondrian/tree/lagunitas < >>> https://github.com/pentaho/mondrian/tree/lagunitas> ) and my kylin >>> dialect ( https://github.com/pentaho/mondrian/pull/480 < >>> https://github.com/pentaho/mondrian/pull/480> ) I’m able to work with >>> Mondrian and Kylin! In the coming days I’ll write a HowTo about my >>> experiences. >>> >>> Best regards, >>> Sébastien Jelsch >>> >>> >>> >>> >>>> Am 22.05.2015 um 18:33 schrieb Luke Han <[email protected]>: >>>> >>>> Please handle this part to Shanghai team, I will put this story in >> v0.7.2 >>>> (after successful release v0.7.1). >>>> >>>> Thanks. >>>> >>>> >>>> Best Regards! >>>> --------------------- >>>> >>>> Luke Han >>>> >>>> 2015-05-23 0:25 GMT+08:00 divye sheth <[email protected]>: >>>> >>>>> Will wait for the core committers. In the meantime might as well test >>> kylin >>>>> with 0.9.2. >>>>> >>>>> Thanks! >>>>> On May 22, 2015 21:52, "Julian Hyde" <[email protected]> wrote: >>>>> >>>>>> Calcite 0.9.2 -> 1.0 is a tricky upgrade. I think you should leave it >>> to >>>>>> the core committers. >>>>>> >>>>>> I wouldn't even be sure that the upgrade from 0.9.1 to 0.9.2 worked >>> until >>>>>> the tests had passed. >>>>>> >>>>>> On Fri, May 22, 2015 at 9:11 AM, divye sheth <[email protected]> >>>>> wrote: >>>>>> >>>>>>> The 0.9.2 release builds fine with Kylin (just built kylin have not >>>>>>> tested). With the Calcite 1.0 release there have been significant >>>>>>> class/package renaming and movement as well as some additional >> classes >>>>>>> coming in. Currently I am trying to figure out AvaticaPrepareResult >> -> >>>>>>> Meta.Signature >>>>>>> I am trying my best here. Java is something that I am not that >> strong >>>>>> with >>>>>>> :-) >>>>>>> >>>>>>> Thanks >>>>>>> Divye Sheth >>>>>>> On May 22, 2015 21:12, "Julian Hyde" <[email protected]> wrote: >>>>>>> >>>>>>>> There are significant API changes between Calcite 0.9 and 1.0. Read >>>>> the >>>>>>> 1.0 >>>>>>>> release notes >>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> https://github.com/apache/incubator-calcite/blob/branch-1.3/doc/history.md#100-incubating--2015-01-31 >>>>>>>> , >>>>>>>> and use the API mapping >>>>>>>> >>>>> https://issues.apache.org/jira/secure/attachment/12681620/mapping.txt >>>>>> if >>>>>>>> you need to. Consider upgrading to 0.9.2 (the last release with the >>>>> old >>>>>>>> API) and getting that working before moving to the renamed API. >>>>>>>> >>>>>>>> I've logged https://issues.apache.org/jira/browse/KYLIN-780 to >> track >>>>>>> this. >>>>>>>> >>>>>>>> >>>>>>>> On Thu, May 21, 2015 at 9:51 PM, divye sheth <[email protected] >>> >>>>>>> wrote: >>>>>>>> >>>>>>>>> Thanks Julian, will try porting optiq 0.9 to calcite 1.0. Will >>>>> commit >>>>>>> if >>>>>>>>> successfull. >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> Divye Sheth >>>>>>>>> On May 21, 2015 22:18, "Julian Hyde" <[email protected]> wrote: >>>>>>>>> >>>>>>>>>> It seems that Mondrian is trying to access a string column as if >>>>> it >>>>>>>> were >>>>>>>>> a >>>>>>>>>> long. Maybe you declared the column of the wrong type in your >>>>>>> Mondrian >>>>>>>>>> schema file? Or maybe Kylin is not reporting the type accurately. >>>>>>>>>> >>>>>>>>>> The JDBC driver code that is failing to convert ( >>>>>>>>>> *net.hydromatic.optiq.runtime.AbstractCursor*) is in Optiq, now >>>>>>> called >>>>>>>>>> Calcite. Later versions of Calcite are more permissive about >>>>>>>> conversions >>>>>>>>> so >>>>>>>>>> if Kylin upgraded to a more recent version of Calcite that would >>>>>>>> probably >>>>>>>>>> improve things. >>>>>>>>>> >>>>>>>>>> On Wed, May 20, 2015 at 2:47 AM, divye sheth < >>>>> [email protected] >>>>>>> >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Devs, >>>>>>>>>>> >>>>>>>>>>> I am trying to get Mondrian to run over Kylin but get an >>>>>> exception >>>>>>>>> while >>>>>>>>>>> creating a connection to Kylin via Mondrian below are the steps >>>>>>> that >>>>>>>> I >>>>>>>>>> have >>>>>>>>>>> followed: >>>>>>>>>>> >>>>>>>>>>> 1. Setup Kylin using On-hadoop Install >>>>>>>>>>> 2. Execute the ./sample.sh script to create sample cube in >>>>> Kylin >>>>>>>>>>> 3. Build Cube >>>>>>>>>>> 4. Test queries against the cube. Also tested using JDBC >>>>> driver. >>>>>>>>>>> >>>>>>>>>>> But when I try to execute MDX using Mondrian on top of Kylin I >>>>>> get >>>>>>> an >>>>>>>>>>> exception trace as follows: >>>>>>>>>>> *[Mondrian Monitor]:[2015-05-20 >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> 14:55:34,563][DEBUG][mondrian.server.MonitorImpl$Actor.run(MonitorImpl.java:975)] >>>>>>>>>>> - StatementEndEvent(0)* >>>>>>>>>>> *java.lang.RuntimeException: cannot convert to long >>>>>>>>>>> >>>>>> (net.hydromatic.optiq.runtime.AbstractCursor$StringAccessor@fff056c >>>>>>>> )* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> net.hydromatic.optiq.runtime.AbstractCursor$AccessorImpl.cannotConvert(AbstractCursor.java:287)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> net.hydromatic.optiq.runtime.AbstractCursor$AccessorImpl.getLong(AbstractCursor.java:243)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> net.hydromatic.optiq.runtime.AbstractCursor$AccessorImpl.getInt(AbstractCursor.java:239)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> net.hydromatic.avatica.AvaticaResultSet.getInt(AvaticaResultSet.java:220)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> org.apache.commons.dbcp.DelegatingResultSet.getInt(DelegatingResultSet.java:225)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.aggmatcher.JdbcSchema$Table.loadColumns(JdbcSchema.java:972)* >>>>>>>>>>> * at >>>>>>>>>> >>>>>> mondrian.rolap.aggmatcher.JdbcSchema$Table.load(JdbcSchema.java:775)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchema$PhysTable.populateColumns(RolapSchema.java:1853)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchema$PhysRelationImpl.ensurePopulated(RolapSchema.java:1519)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchema$PhysTable.ensurePopulated(RolapSchema.java:1729)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchemaLoader.registerTable(RolapSchemaLoader.java:1051)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchemaLoader.validatePhysicalSchema(RolapSchemaLoader.java:715)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>> >> mondrian.rolap.RolapSchemaLoader.loadStage2(RolapSchemaLoader.java:376)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>> >> mondrian.rolap.RolapSchemaLoader.loadStage1(RolapSchemaLoader.java:336)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>> >> mondrian.rolap.RolapSchemaLoader.loadStage0(RolapSchemaLoader.java:272)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.rolap.RolapSchemaLoader.createSchema(RolapSchemaLoader.java:4303)* >>>>>>>>>>> * at >>>>>> mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:210)* >>>>>>>>>>> * at >>>>> mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:62)* >>>>>>>>>>> * at >>>>>>> mondrian.rolap.RolapConnection.<init>(RolapConnection.java:160)* >>>>>>>>>>> * at >>>>>>> mondrian.rolap.RolapConnection.<init>(RolapConnection.java:84)* >>>>>>>>>>> * at >>>>>>>> mondrian.olap.DriverManager.getConnection(DriverManager.java:112)* >>>>>>>>>>> * at >>>>>>>> mondrian.olap.DriverManager.getConnection(DriverManager.java:68)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.olap4j.MondrianOlap4jConnection.<init>(MondrianOlap4jConnection.java:153)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.olap4j.FactoryJdbc4Plus$AbstractConnection.<init>(FactoryJdbc4Plus.java:323)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.olap4j.FactoryJdbc41Impl$MondrianOlap4jConnectionJdbc41.<init>(FactoryJdbc41Impl.java:118)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.olap4j.FactoryJdbc41Impl.newConnection(FactoryJdbc41Impl.java:32)* >>>>>>>>>>> * at >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> mondrian.olap4j.MondrianOlap4jDriver.connect(MondrianOlap4jDriver.java:139)* >>>>>>>>>>> * at >>>>>> java.sql.DriverManager.getConnection(DriverManager.java:571)* >>>>>>>>>>> * at >>>>>> java.sql.DriverManager.getConnection(DriverManager.java:233)* >>>>>>>>>>> * at >>>>>>>>>> >>>>>> com.fractal.mondrian.kylin.MondrianKylin.main(MondrianKylin.java:27)* >>>>>>>>>>> >>>>>>>>>>> I tried searching a lot but the only link I could find related >>>>> to >>>>>>>> this >>>>>>>>>>> issue was >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >> https://groups.google.com/forum/#!searchin/optiq-dev/mondrian/optiq-dev/qMd5FyOtp28/-BBsC4ScKe0J >>>>>>>>>>> >>>>>>>>>>> *Kylin Version: 0.7-1* >>>>>>>>>>> *Hadoop: 2.6* >>>>>>>>>>> *Hbase: 0.98* >>>>>>>>>>> *Hive: 1.0.1* >>>>>>>>>>> *Mondrian Jar: 4.3* >>>>>>>>>>> >>>>>>>>>>> Attached is the mondrian xml for reference that corresponds to >>>>>> the >>>>>>>> cube >>>>>>>>>> in >>>>>>>>>>> Kylin. >>>>>>>>>>> I am not pretty sure what am I doing wrong, any help/pointers >>>>>> would >>>>>>>> be >>>>>>>>>>> appreciated a lot. Apologize if this is not a Kylin issue. >>>>>>>>>>> >>>>>>>>>>> I am new to the Kylin community. >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> Divye Sheth >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>> >>> >>
