-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/59808/#review177678
-----------------------------------------------------------




ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSetOpTransposeRule.java
Line 28 (original), 45 (patched)
<https://reviews.apache.org/r/59808/#comment251369>

    Comment:
    This rule rewrites Fil
                        |
                      Union
                      /   \
                     Op1   Op2
                     
                     to
                      Union
                        /\
                        FIL
                        | |
                      Op1  Op2
                      
     
     It additionally can remove branch(es) of filter if its able to determine 
that they are going to generate empty result set.



ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSetOpTransposeRule.java
Lines 73 (patched)
<https://reviews.apache.org/r/59808/#comment251370>

    Good to add reason for why its overridden?
    which is to do branch elimination



ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSetOpTransposeRule.java
Lines 102 (patched)
<https://reviews.apache.org/r/59808/#comment251372>

    It might be better to call simplify(RexNode) so as not to miss 
simplificaiton on operands other than And.



ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSetOpTransposeRule.java
Lines 124 (patched)
<https://reviews.apache.org/r/59808/#comment251373>

    Comment: We assume alwaysFalse filter will get pushed down to TS so this 
branch so it won't read any data.



ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveUnionMergeRule.java
Lines 42 (patched)
<https://reviews.apache.org/r/59808/#comment251374>

    Should it extend UnionMergeRule instead and pass on HiveRelBuilder? If 
UnionMergeRule doesnt accept RelBuilder, please create a calcite jira.



ql/src/test/queries/clientpositive/filter_union.q
Lines 1 (patched)
<https://reviews.apache.org/r/59808/#comment251375>

    Instead of CliDriver, can you add this to LlapCliDriver?



ql/src/test/queries/clientpositive/filter_union.q
Lines 2 (patched)
<https://reviews.apache.org/r/59808/#comment251376>

    Also, add hive.optimize.metadataonly=true; That should quick in some of 
these queries.



ql/src/test/results/clientpositive/perf/query4.q.out
Lines 240-275 (original)
<https://reviews.apache.org/r/59808/#comment251377>

    Pretty cool !


- Ashutosh Chauhan


On June 10, 2017, 9:57 p.m., pengcheng xiong wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/59808/
> -----------------------------------------------------------
> 
> (Updated June 10, 2017, 9:57 p.m.)
> 
> 
> Review request for hive and Ashutosh Chauhan.
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HIVE-16797
> 
> 
> Diffs
> -----
> 
>   
> ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSetOpTransposeRule.java
>  3ee29e0482 
>   
> ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveUnionMergeRule.java
>  PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java 348331e052 
>   ql/src/test/queries/clientpositive/filter_union.q PRE-CREATION 
>   ql/src/test/queries/clientpositive/perf/query11.q PRE-CREATION 
>   ql/src/test/results/clientpositive/filter_aggr.q.out db7dcaed3f 
>   ql/src/test/results/clientpositive/filter_union.q.out PRE-CREATION 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 8b04bc9261 
>   ql/src/test/results/clientpositive/llap/explainuser_2.q.out e3f70b097f 
>   ql/src/test/results/clientpositive/llap/orc_ppd_basic.q.out 5382c42412 
>   ql/src/test/results/clientpositive/llap/tez_union_multiinsert.q.out 
> 14e8e4389f 
>   ql/src/test/results/clientpositive/perf/query11.q.out PRE-CREATION 
>   ql/src/test/results/clientpositive/perf/query14.q.out 048a17f92f 
>   ql/src/test/results/clientpositive/perf/query23.q.out 1fd8cb4f25 
>   ql/src/test/results/clientpositive/perf/query33.q.out c1a5fa28ed 
>   ql/src/test/results/clientpositive/perf/query4.q.out 1b2048649a 
>   ql/src/test/results/clientpositive/perf/query5.q.out a3f2d58fec 
>   ql/src/test/results/clientpositive/perf/query56.q.out 4ec7201fa7 
>   ql/src/test/results/clientpositive/perf/query60.q.out 12d8cdd9b4 
>   ql/src/test/results/clientpositive/perf/query71.q.out 44658081b5 
>   ql/src/test/results/clientpositive/perf/query74.q.out bb4a71e6ce 
>   ql/src/test/results/clientpositive/perf/query76.q.out dcd5004166 
>   ql/src/test/results/clientpositive/perf/query77.q.out d46ba6b13c 
>   ql/src/test/results/clientpositive/perf/query80.q.out 3cf41f3fed 
>   ql/src/test/results/clientpositive/spark/union30.q.out 12eda1d3b6 
>   ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out f6844c4a38 
>   ql/src/test/results/clientpositive/union24.q.out d6b1a79b20 
>   ql/src/test/results/clientpositive/union30.q.out 26a27c8e15 
>   ql/src/test/results/clientpositive/union34.q.out 9d593315af 
>   ql/src/test/results/clientpositive/unionall_unbalancedppd.q.out b3e128a3d6 
> 
> 
> Diff: https://reviews.apache.org/r/59808/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> pengcheng xiong
> 
>

Reply via email to