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

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

[~navis], thanks to you, the patch was almost ready (modulo some 
fixes/testing). It would be indeed a great addition.

I guess there are two reasons why views need special treatment.
First, CTE within view should not be materialized. Thus, I introduced a flag 
that disables CTE materialization if we are parsing a view creation/alter 
statement.
Secondly, counting CTE references within views is a bit tricky (code is a bit 
convoluted). The current patch skips views for counting purposes, treating them 
simply as tables. We can address this issue in a follow-up JIRA.

> Pre-materializing complex CTE queries
> -------------------------------------
>
>                 Key: HIVE-11752
>                 URL: https://issues.apache.org/jira/browse/HIVE-11752
>             Project: Hive
>          Issue Type: Improvement
>          Components: Query Processor
>    Affects Versions: 2.1.0
>            Reporter: Navis
>            Assignee: Jesus Camacho Rodriguez
>            Priority: Minor
>         Attachments: HIVE-11752.03.patch, HIVE-11752.04.patch, 
> HIVE-11752.1.patch.txt, HIVE-11752.2.patch.txt
>
>
> Currently, hive regards CTE clauses as a simple alias to the query block, 
> which makes redundant works if it's used multiple times in a query. This 
> introduces a reference threshold for pre-materializing the CTE clause as a 
> volatile table (which is not exists in any form of metastore and just 
> accessible from QB).



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

Reply via email to