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

Jinfeng Ni commented on DRILL-1921:
-----------------------------------

Couple of comments:

1. For the exception, how about  DrillUnsupportedSQLException,  then extended 
by DrillUnsupportedTypeException, DrillUnsupportedFunctionException, etc ?

2. In the exception, why do we add the JIRA number?

3. The code only modified DefaultSqlHandler.getPlan(), and did not touch 
ExplainHandler.getPlan(), etc?  What if user put "explain for sql_statement" 
with the unsupported feature?
   
   This also makes me wonder if you could put the logic of checking in a better 
place, so that all the Handlers could utilize the logic?

4. You call the checking against "rewrittenSqlNode", not "validated".  This 
means your checking logic will kick in before Calcite/Optiq's validator does it 
job. Will it better to let Calcite validator finishes its semantics check, and 
only when the semantics check passes, and the query has those unsupported 
feature, Drill then will throw Exception?

  

> Throw unsupported error message some set operators that are not currently 
> supported
> -----------------------------------------------------------------------------------
>
>                 Key: DRILL-1921
>                 URL: https://issues.apache.org/jira/browse/DRILL-1921
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: SQL Parser
>            Reporter: Victoria Markman
>            Assignee: Jinfeng Ni
>             Fix For: 0.8.0
>
>         Attachments: DRILL-1921.1.patch, DRILL-1921.2.patch, 
> DRILL-1921.3.patch
>
>
> Throw unsupported error message for these operators: (instead of "Could not 
> be implemented error below")
> INTERSECT
> EXCEPT
> UNION
> CROSS JOIN
> FULL OUTER JOIN
> Query failed: Query failed: Unexpected exception during fragment 
> initialization: Node [rel#517133:Subset#3.LOGICAL.ANY([]).[]] could not be 
> implemented; planner state:
> Enhacement requests in Jira for these above mentioned operators:
> {code}
> INTERSECT       DRILL-1308
> MINUS                No enhancement request ( not recognized in grammar)
> EXCEPT             No enhancement request
> UNION                DRILL-1169
> CROSS JOIN     DRILL-786
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to