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 > > >>>>>>>> > > >>>>>>> > > >>>>>> > > >>>>> > > >>>> > > >>> > > >> > > > > >
