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




ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveJoinAddNotNullRule.java
Lines 121 (patched)
<https://reviews.apache.org/r/70326/#comment300296>

    I think you should initialize these preds as: 
    RexNode newLeftPredicate = rexBuilder.makeLiteral(true);
    Then you can remove all the null checks below.


- Jesús Camacho Rodríguez


On March 27, 2019, 5:39 p.m., Vineet Garg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/70326/
> -----------------------------------------------------------
> 
> (Updated March 27, 2019, 5:39 p.m.)
> 
> 
> Review request for hive and Jesús Camacho Rodríguez.
> 
> 
> Bugs: HIVE-21230
>     https://issues.apache.org/jira/browse/HIVE-21230
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HIVE-21230: LEFT OUTER JOIN does not generate transitive IS NOT NULL filter 
> on right side (HiveJoinAddNotNullRule bails out for outer joins)
> 
> 
> Diffs
> -----
> 
>   itests/src/test/resources/testconfiguration.properties 3a2807f302 
>   
> ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveJoinAddNotNullRule.java
>  9711625016 
>   ql/src/test/queries/clientpositive/transitive_not_null.q PRE-CREATION 
>   ql/src/test/results/clientpositive/annotate_stats_join.q.out 6c73d6398c 
>   ql/src/test/results/clientpositive/cbo_SortUnionTransposeRule.q.out 
> 1beaa648de 
>   ql/src/test/results/clientpositive/cbo_rp_join0.q.out 76eaa52855 
>   ql/src/test/results/clientpositive/constant_prop_3.q.out db73902af1 
>   ql/src/test/results/clientpositive/correlationoptimizer8.q.out 69a6670f44 
>   ql/src/test/results/clientpositive/infer_join_preds.q.out 0afdd029be 
>   ql/src/test/results/clientpositive/innerjoin.q.out 709dbdb539 
>   ql/src/test/results/clientpositive/join45.q.out fd639b9d51 
>   ql/src/test/results/clientpositive/join46.q.out 02cb625d0f 
>   ql/src/test/results/clientpositive/join47.q.out e9b6be4f3a 
>   ql/src/test/results/clientpositive/join_cond_pushdown_unqual5.q.out 
> a966d8caf3 
>   ql/src/test/results/clientpositive/join_emit_interval.q.out 9f3f01f57e 
>   ql/src/test/results/clientpositive/join_filters_overlap.q.out 6cd17d1ddb 
>   ql/src/test/results/clientpositive/join_merging.q.out 5b9c0630e6 
>   ql/src/test/results/clientpositive/join_star.q.out 9caf12da49 
>   ql/src/test/results/clientpositive/lineage1.q.out 4a2ca453ac 
>   ql/src/test/results/clientpositive/llap/auto_sortmerge_join_14.q.out 
> cf7252f753 
>   ql/src/test/results/clientpositive/llap/auto_sortmerge_join_15.q.out 
> b6e0ebf30a 
>   ql/src/test/results/clientpositive/llap/auto_sortmerge_join_16.q.out 
> 2c6d7cafa7 
>   ql/src/test/results/clientpositive/llap/check_constraint.q.out 7b794ba34b 
>   ql/src/test/results/clientpositive/llap/constprog_dpp.q.out eef365b9b1 
>   ql/src/test/results/clientpositive/llap/correlationoptimizer1.q.out 
> 4ba041d992 
>   ql/src/test/results/clientpositive/llap/correlationoptimizer2.q.out 
> c0909fe1ad 
>   ql/src/test/results/clientpositive/llap/correlationoptimizer4.q.out 
> 66e5bff966 
>   ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out 
> 1679d577e6 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 1ea8fdcbb2 
>   ql/src/test/results/clientpositive/llap/hybridgrace_hashjoin_1.q.out 
> 63c455b3e4 
>   ql/src/test/results/clientpositive/llap/join32_lessSize.q.out 338f840938 
>   ql/src/test/results/clientpositive/llap/join46.q.out ec584299c5 
>   ql/src/test/results/clientpositive/llap/join_emit_interval.q.out 05424ad04d 
>   ql/src/test/results/clientpositive/llap/limit_join_transpose.q.out 
> b0e8aeaf08 
>   ql/src/test/results/clientpositive/llap/lineage2.q.out 9543864b2e 
>   ql/src/test/results/clientpositive/llap/lineage3.q.out 11e6904a12 
>   ql/src/test/results/clientpositive/llap/mapjoin3.q.out ac36e4ff44 
>   ql/src/test/results/clientpositive/llap/mapjoin46.q.out d9d239611b 
>   ql/src/test/results/clientpositive/llap/mapjoin_emit_interval.q.out 
> 8c9008a3d8 
>   ql/src/test/results/clientpositive/llap/mergejoin.q.out f1153e76dd 
>   ql/src/test/results/clientpositive/llap/sharedwork.q.out 9bd73f98b6 
>   ql/src/test/results/clientpositive/llap/skewjoinopt15.q.out 35f7051ebe 
>   ql/src/test/results/clientpositive/llap/smb_mapjoin_17.q.out 544ca58541 
>   ql/src/test/results/clientpositive/llap/smb_mapjoin_4.q.out cf0663ed6c 
>   ql/src/test/results/clientpositive/llap/smb_mapjoin_5.q.out fa997c4fd6 
>   ql/src/test/results/clientpositive/llap/subquery_in_having.q.out ddb7b421d9 
>   ql/src/test/results/clientpositive/llap/subquery_multi.q.out e04b2a6f94 
>   ql/src/test/results/clientpositive/llap/subquery_notin.q.out 37d9253f4e 
>   ql/src/test/results/clientpositive/llap/subquery_scalar.q.out 1016a64525 
>   ql/src/test/results/clientpositive/llap/subquery_select.q.out ab56f905e0 
>   ql/src/test/results/clientpositive/llap/tez_dynpart_hashjoin_3.q.out 
> 8caf6c712a 
>   ql/src/test/results/clientpositive/llap/tez_fixed_bucket_pruning.q.out 
> 1574565408 
>   ql/src/test/results/clientpositive/llap/tez_join_tests.q.out 0bddcf7b9b 
>   ql/src/test/results/clientpositive/llap/tez_joins_explain.q.out d97ad532ba 
>   ql/src/test/results/clientpositive/llap/tez_nway_join.q.out 74d76ecc22 
>   ql/src/test/results/clientpositive/llap/tez_smb_empty.q.out 771d8f9ff9 
>   ql/src/test/results/clientpositive/llap/tez_smb_reduce_side.q.out 
> 93a1716064 
>   ql/src/test/results/clientpositive/llap/tez_union.q.out 5224b2495c 
>   ql/src/test/results/clientpositive/llap/transitive_not_null.q.out 
> PRE-CREATION 
>   ql/src/test/results/clientpositive/llap/vector_coalesce_3.q.out 493cfca23a 
>   ql/src/test/results/clientpositive/llap/vector_groupby_mapjoin.q.out 
> 229814f46d 
>   ql/src/test/results/clientpositive/llap/vector_join_nulls.q.out 3040515cb7 
>   ql/src/test/results/clientpositive/llap/vector_left_outer_join.q.out 
> 3d1f78c64c 
>   ql/src/test/results/clientpositive/llap/vector_left_outer_join2.q.out 
> 261b470c82 
>   ql/src/test/results/clientpositive/llap/vector_outer_join0.q.out 3973675607 
>   ql/src/test/results/clientpositive/llap/vector_outer_join1.q.out 27eb70099b 
>   ql/src/test/results/clientpositive/llap/vector_outer_join2.q.out f241158417 
>   
> ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out
>  7f096716ff 
>   ql/src/test/results/clientpositive/llap/vectorized_join46.q.out 1b4d3438ef 
>   ql/src/test/results/clientpositive/mapjoin1.q.out 5f381bac2a 
>   ql/src/test/results/clientpositive/mapjoin3.q.out 92d8f60c5f 
>   ql/src/test/results/clientpositive/mapjoin46.q.out 2837ca1f6c 
>   ql/src/test/results/clientpositive/mapjoin47.q.out 9cd3b1eadd 
>   ql/src/test/results/clientpositive/masking_10.q.out d6ce930e26 
>   ql/src/test/results/clientpositive/mergejoin.q.out 1c6d62c8a0 
>   ql/src/test/results/clientpositive/mergejoins_mixed.q.out 31feb8da94 
>   ql/src/test/results/clientpositive/optional_outer.q.out ad82211a0a 
>   ql/src/test/results/clientpositive/perf/spark/query40.q.out 8692d6a2fb 
>   ql/src/test/results/clientpositive/perf/spark/query45.q.out 7ee7c0ee2b 
>   ql/src/test/results/clientpositive/perf/spark/query5.q.out af8bf12ecb 
>   ql/src/test/results/clientpositive/perf/spark/query72.q.out 55b720a54c 
>   ql/src/test/results/clientpositive/perf/spark/query75.q.out d5bd3d286d 
>   ql/src/test/results/clientpositive/perf/spark/query78.q.out 125f0a9904 
>   ql/src/test/results/clientpositive/perf/spark/query80.q.out b94089bddd 
>   ql/src/test/results/clientpositive/perf/spark/query93.q.out f69920d27b 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query40.q.out 1f834b5647 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query5.q.out e78c3e5917 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query72.q.out e49b44bf32 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query75.q.out 8c445d9de5 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query78.q.out 02635826f0 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query80.q.out 334f09cc33 
>   ql/src/test/results/clientpositive/perf/tez/cbo_query93.q.out 6a8ed39e29 
>   ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query78.q.out 
> de1b133006 
>   ql/src/test/results/clientpositive/perf/tez/constraints/query78.q.out 
> ef4d6dbc21 
>   ql/src/test/results/clientpositive/perf/tez/query40.q.out 9d64330048 
>   ql/src/test/results/clientpositive/perf/tez/query45.q.out c2f9374c4b 
>   ql/src/test/results/clientpositive/perf/tez/query72.q.out f6a99a35de 
>   ql/src/test/results/clientpositive/perf/tez/query75.q.out 4019788fa1 
>   ql/src/test/results/clientpositive/perf/tez/query78.q.out 3d938e1c8e 
>   ql/src/test/results/clientpositive/perf/tez/query80.q.out 6c4e6ae627 
>   ql/src/test/results/clientpositive/position_alias_test_1.q.out 397daf3e29 
>   ql/src/test/results/clientpositive/skewjoin_mapjoin1.q.out a5afa605c1 
>   ql/src/test/results/clientpositive/skewjoin_mapjoin10.q.out 1ff7f0e3fd 
>   ql/src/test/results/clientpositive/skewjoin_union_remove_1.q.out 349e9f33fe 
>   ql/src/test/results/clientpositive/skewjoinopt1.q.out 8389ee70df 
>   ql/src/test/results/clientpositive/skewjoinopt2.q.out 4bad303039 
>   ql/src/test/results/clientpositive/smb_mapjoin_47.q.out 20a7348f64 
>   ql/src/test/results/clientpositive/spark/annotate_stats_join.q.out 
> 54a26e1057 
>   ql/src/test/results/clientpositive/spark/auto_sortmerge_join_16.q.out 
> 24cf07b9a3 
>   ql/src/test/results/clientpositive/spark/auto_sortmerge_join_16.q.out_spark 
> 8c22440488 
>   ql/src/test/results/clientpositive/spark/innerjoin.q.out d481f6e439 
>   ql/src/test/results/clientpositive/spark/join32_lessSize.q.out 7075137eaf 
>   ql/src/test/results/clientpositive/spark/join_filters_overlap.q.out 
> 49226b2622 
>   ql/src/test/results/clientpositive/spark/join_merging.q.out afa8e1e163 
>   ql/src/test/results/clientpositive/spark/join_star.q.out b1656d2151 
>   ql/src/test/results/clientpositive/spark/mapjoin1.q.out a1658a1851 
>   ql/src/test/results/clientpositive/spark/mergejoins_mixed.q.out 653e7d28f4 
>   ql/src/test/results/clientpositive/spark/skewjoin_union_remove_1.q.out 
> 89d9958035 
>   ql/src/test/results/clientpositive/spark/skewjoinopt1.q.out 40b22740b9 
>   ql/src/test/results/clientpositive/spark/skewjoinopt15.q.out 2df2b25c8d 
>   ql/src/test/results/clientpositive/spark/skewjoinopt2.q.out b32312d314 
>   ql/src/test/results/clientpositive/spark/smb_mapjoin_17.q.out d2f8b39f59 
>   ql/src/test/results/clientpositive/spark/smb_mapjoin_4.q.out 2eee709ab2 
>   ql/src/test/results/clientpositive/spark/smb_mapjoin_5.q.out b05c8ab19d 
>   ql/src/test/results/clientpositive/spark/spark_constprog_dpp.q.out 
> c1842b839d 
>   
> ql/src/test/results/clientpositive/spark/spark_dynamic_partition_pruning.q.out
>  89da63134c 
>   ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 
> b8403f4e39 
>   
> ql/src/test/results/clientpositive/spark/spark_vectorized_dynamic_partition_pruning.q.out
>  e90f9d17ac 
>   ql/src/test/results/clientpositive/spark/subquery_multi.q.out 17240f9dc5 
>   ql/src/test/results/clientpositive/spark/subquery_notin.q.out 2d93874450 
>   ql/src/test/results/clientpositive/spark/subquery_scalar.q.out 4e31c3fd20 
>   ql/src/test/results/clientpositive/spark/subquery_select.q.out 3c6f6af020 
>   ql/src/test/results/clientpositive/spark/tez_join_tests.q.out 2d7b16f281 
>   ql/src/test/results/clientpositive/spark/tez_joins_explain.q.out 114e810a54 
>   ql/src/test/results/clientpositive/spark/vector_left_outer_join.q.out 
> cb50bd6eef 
>   ql/src/test/results/clientpositive/spark/vector_outer_join0.q.out 
> e6964e1331 
>   ql/src/test/results/clientpositive/spark/vector_outer_join1.q.out 
> 71bcdef0d3 
>   ql/src/test/results/clientpositive/spark/vector_outer_join2.q.out 
> e09b940a23 
>   ql/src/test/results/clientpositive/subquery_notin_having.q.out 68a65df3a9 
>   ql/src/test/results/clientpositive/tez/hybridgrace_hashjoin_1.q.out 
> e0563eb550 
>   ql/src/test/results/clientpositive/vector_coalesce_3.q.out 39fd5e898a 
>   ql/src/test/results/clientpositive/vector_groupby_mapjoin.q.out 613a30701a 
>   ql/src/test/results/clientpositive/vector_left_outer_join.q.out 1aa237f65d 
>   ql/src/test/results/clientpositive/vector_left_outer_join2.q.out 568fb2a589 
>   ql/src/test/results/clientpositive/vector_outer_join0.q.out dc5889c787 
>   ql/src/test/results/clientpositive/vector_outer_join1.q.out aaf84bab73 
>   ql/src/test/results/clientpositive/vector_outer_join2.q.out a5567d9e99 
>   ql/src/test/results/clientpositive/vector_outer_join3.q.out 3df003d2d2 
>   ql/src/test/results/clientpositive/vector_outer_join4.q.out 826a838d36 
>   ql/src/test/results/clientpositive/vector_outer_join6.q.out bd938f631a 
>   ql/src/test/results/clientpositive/vectorized_join46_mr.q.out 52107e91f8 
> 
> 
> Diff: https://reviews.apache.org/r/70326/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Vineet Garg
> 
>

Reply via email to