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