[ 
https://issues.apache.org/jira/browse/KYLIN-3594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16638161#comment-16638161
 ] 

ASF GitHub Bot commented on KYLIN-3594:
---------------------------------------

hit-lacus closed pull request #268: KYLIN-3594 Obey JDBC standard
URL: https://github.com/apache/kylin/pull/268
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):



 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Select with Catalog fails
> -------------------------
>
>                 Key: KYLIN-3594
>                 URL: https://issues.apache.org/jira/browse/KYLIN-3594
>             Project: Kylin
>          Issue Type: Bug
>            Reporter: Hosur Narahari
>            Assignee: XiaoXiang Yu
>            Priority: Major
>
> By using DatabaseMetaData if we get catalog using getCatalogs() method, it 
> return value "defaultCatalog". It returns actual hive schema when we execute 
> getSchemas().
> According to JDBC contract, catalog.schema.table should be valid from clause 
> and many query layers use that. But kylin fails when we execute that query.
> I've tried to write sample code piece for that below.
>  
>         _DatabaseMetaData db = conn.getMetaData();_
>         _ResultSet catalogSet = db.getCatalogs();_
>         _String catalog = "";_
>         _if(catalogSet.next()) {_
>             _catalog = catalogSet.getString("TABLE_CAT");_
>         _}_
>         _ResultSet schemaSet = db.getSchemas();_
>         _String schema = "";_
>         _if(schemaSet.next()) {_
>             _schema = schemaSet.getString("TABLE_SCHEM");_
>         _}_
>         _StringBuilder sb = new StringBuilder("SELECT * FROM ");_
>         _if(!catalog.isEmpty()) {_
>             _sb.append(catalog + ".");_
>         _}_
>         _if(!schema.isEmpty()) {_
>             _sb.append(schema + ".");_
>         _}_
>         _sb.append("kylin_sales limit 10");_
>         _String query = sb.toString();_
>         _Statement stat = conn.createStatement();_
>         _ResultSet rs = stat.executeQuery(query);_
>         _while(rs.next()) {_
>             _System.out.println(rs.getObject("trans_id"));_
>         _}_
> In short, the above snippet is executing the query,
> _select * from defaultCatalog.DEFAULT.kylin_sales._
>  
> Same thing happens even with different schemas if we have like,
> _select * from defaultCatalog.test.kylin_sales_ also fails.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to