You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Jesus Camacho Rodriguez (Jira)" <ji...@apache.org> on 2020/01/22 19:45:00 UTC

[jira] [Commented] (HIVE-22578) CBO genOPTree is not failsafe for CTAS and VIEW statements

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

Jesus Camacho Rodriguez commented on HIVE-22578:
------------------------------------------------

[~hamvas.aron], [~vgarg], this patch seems to introduce a call to create a duplicate of the complete AST tree, which is a very expensive operation. Is there an alternative fix that would avoid that call?

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