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