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

Aron Hamvas commented on HIVE-22578:
------------------------------------

[~jcamachorodriguez], the problem is that with CBO enabled, the original AST is 
lost during the execution of this method. If CBO fails due and the rewritten 
AST is not good, there is no way to fall back to the original one, unless we 
save it. 

> CBO genOPTree is not failsafe for CTAS and VIEW statements
> ----------------------------------------------------------
>
>                 Key: HIVE-22578
>                 URL: https://issues.apache.org/jira/browse/HIVE-22578
>             Project: Hive
>          Issue Type: Bug
>          Components: CBO
>    Affects Versions: 3.0.0, 3.1.2
>            Reporter: Aron Hamvas
>            Assignee: Aron Hamvas
>            Priority: Major
>             Fix For: 4.0.0
>
>         Attachments: HIVE-22578.2.patch, HIVE-22578.patch
>
>
> If CBO fails during OT generation, it is supposed to skip CBO and fall back 
> to SemanticAnalyzer generating the OT for the original AST. However, for CTAS 
> and VIEW statements, the original AST is discarded and replaced with the new 
> AST. 
> If OT generation for the new AST fails with a SemanticException, the 
> compilation is destined to fail completely since we cannot fall back to the 
> original and possibly valid AST.
> Also, the SemanticException sometimes gets hidden and misjudged as a missing 
> column statistics issue due to bad error handling.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to