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

Reply via email to