[ 
https://issues.apache.org/jira/browse/DRILL-3316?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jinfeng Ni resolved DRILL-3316.
-------------------------------
    Resolution: Fixed

fixed in commit :  ffae1691c0cd526ed1095fbabbc0855d016790d7.

> Different SQLHandlers should go through the same planning logics for the same 
> SELECT statement. 
> ------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-3316
>                 URL: https://issues.apache.org/jira/browse/DRILL-3316
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Query Planning & Optimization
>            Reporter: Jinfeng Ni
>            Assignee: Jinfeng Ni
>
> Given a SQL SELECT statement s, if we 1) run the SELECT statement alone, 2) 
> put it under a CTAS statement, 3) put it under a CREATE VIEW statement, 4) 
> put it under a EXPLAIN PLAN statement,  this statement should go through the 
> same planning logics, and expect the same behavior.
> However, this is not the case today.  For instance, some SQL functionalities 
> or data types are not supported and will hit UNSUPPORTED OPERATOR error, if 
> we run the SELECT statement alone. But if we put it under CREATE VIEW 
> statement, it will pass and the error is delayed until we query the view.
> Another example, if the query has window function, the planner will call a 
> HepPlanner to do some additional planning work just for the window function. 
> However, if the same SELECT statement is put under a CTAS statement, the 
> additional planning work is skipped. This most likely will hit execution 
> error, or return completely wrong result.  This leads to issues reported in 
> DRILL-3293 / DRILL-3294.
> Lastly, the same SELECT statement might get different plan if run alone, or 
> run under CTAS, since different planning setting might be set.
> In this JIRA, we are going to refactor part of SqlHandler code in query 
> planning component, such that the same SELECT statement will go through the 
> same planning logic, whether it use DefaultSqlHandler, or CreateTableHandler, 
> or CreateViewHandler, or ExplainHandler. 



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

Reply via email to