> On Aug. 2, 2018, 6:08 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/cbo_rp_simple_select.q.out
> > Line 918 (original), 918 (patched)
> > <https://reviews.apache.org/r/68108/diff/3/?file=2066403#file2066403line918>
> >
> >     This could be further simplified. c_int = c_int should become c_int is 
> > not null can be explored in follow-up since Calcite already has this 
> > simplification logic.

Actually Calcite misses this simple rule..but the logic already there - and 
works in case unknownAsFalse is true...the changes on 2/3 valued logic handling 
will probably enable this unknownAsFalse=false as well.


> On Aug. 2, 2018, 6:08 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out
> > Lines 382-384 (original)
> > <https://reviews.apache.org/r/68108/diff/3/?file=2066409#file2066409line382>
> >
> >     Loss of this will be regression. We need to fix this before committing 
> > it.

I think this will need a hive dialect fix in Calcite - which usually arrives as 
a Calcite upgrade...

The underlying exception is coming from Calcite:
```
Caused by: java.lang.ClassCastException: org.apache.calcite.rex.RexCall cannot 
be cast to org.apache.calcite.rex.RexSubQuery
        at 
org.apache.calcite.rel.rel2sql.SqlImplementor$Context.toSql(SqlImplementor.java:540)
 ~[calcite-core-1.17.0.jar:1.17.0]
```
and its root cause is that in calcite there are no `IN`s as in hive because 
calcite's sql translator rewrites them either into ORs or into a subquery; 
hence the exception tries to rely on this contract...that INs are actually 
*always* subqueries....to fix this I've opened CALCITE-2444


It seems this was introduced not so long ago...so it's not yet a regression... 
(HIVE-19360 with fix version 4.0 / 3.2)


> On Aug. 2, 2018, 6:08 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/perf/tez/query15.q.out
> > Line 74 (original), 74 (patched)
> > <https://reviews.apache.org/r/68108/diff/3/?file=2066441#file2066441line74>
> >
> >     In this case LHS is column and all elements in IN list are constants, 
> > so this should have been folded to IN again?

no; because the folding logic could not process this or - HIVE-20296 will 
improve on it.


> On Aug. 2, 2018, 6:08 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/perf/tez/query53.q.out
> > Line 133 (original), 133 (patched)
> > <https://reviews.apache.org/r/68108/diff/3/?file=2066444#file2066444line133>
> >
> >     Here LHS of in is column ref and RHS are alll constants, so should have 
> > folded back to IN.

yes this is folded back....my patch have not contained an updated version of 
this q.out


- Zoltan


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


On Aug. 2, 2018, 2:16 p.m., Zoltan Haindrich wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68108/
> -----------------------------------------------------------
> 
> (Updated Aug. 2, 2018, 2:16 p.m.)
> 
> 
> Review request for hive, Ashutosh Chauhan and Gopal V.
> 
> 
> Bugs: HIVE-19097
>     https://issues.apache.org/jira/browse/HIVE-19097
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> * open in to or - only column can be on left side
> * close ors into in at 2
> 
> 
> Diffs
> -----
> 
>   common/src/java/org/apache/hadoop/hive/conf/HiveConf.java 093b4a73f3 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java 
> 97e405970f 
>   
> ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HivePointLookupOptimizerRule.java
>  01ad41c497 
>   
> ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/RexNodeConverter.java
>  f544f58632 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java 
> fa941a1b25 
>   ql/src/test/org/apache/hadoop/hive/ql/plan/mapping/TestCounterMapping.java 
> b57b5ddc2c 
>   ql/src/test/queries/clientpositive/pointlookup.q 1b65cec71c 
>   ql/src/test/queries/clientpositive/pointlookup2.q fe19381368 
>   ql/src/test/queries/clientpositive/pointlookup3.q f98feeb164 
>   ql/src/test/results/clientpositive/alter_partition_coltype.q.out 5d033a3c01 
>   ql/src/test/results/clientpositive/annotate_stats_filter.q.out 54395886d2 
>   ql/src/test/results/clientpositive/annotate_stats_part.q.out bafc6de51e 
>   ql/src/test/results/clientpositive/auto_join19.q.out 3e07ec06de 
>   ql/src/test/results/clientpositive/cbo_rp_simple_select.q.out 2e7d79660b 
>   ql/src/test/results/clientpositive/cbo_simple_select.q.out 33f0e71080 
>   ql/src/test/results/clientpositive/druid_intervals.q.out a5203c3182 
>   ql/src/test/results/clientpositive/dynamic_partition_skip_default.q.out 
> 97922c2636 
>   ql/src/test/results/clientpositive/filter_cond_pushdown.q.out b84a2d4b79 
>   ql/src/test/results/clientpositive/fold_eq_with_case_when.q.out d06fb60345 
>   ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out 
> 98ad3656e7 
>   ql/src/test/results/clientpositive/llap/bucketpruning1.q.out cc637db05b 
>   ql/src/test/results/clientpositive/llap/bucketsortoptimize_insert_7.q.out 
> 1330a86426 
>   ql/src/test/results/clientpositive/llap/cbo_simple_select.q.out a35edb42a8 
>   ql/src/test/results/clientpositive/llap/check_constraint.q.out 123a3e46fc 
>   ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out 
> 8f06ee58ce 
>   ql/src/test/results/clientpositive/llap/enforce_constraint_notnull.q.out 
> e03cd3437e 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 4db83c149d 
>   ql/src/test/results/clientpositive/llap/kryo.q.out 234bae89c7 
>   ql/src/test/results/clientpositive/llap/llap_decimal64_reader.q.out 
> 88ddd9c076 
>   ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb.q.out 
> 1841f1f4d3 
>   
> ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_2.q.out 
> d7c92d8c59 
>   ql/src/test/results/clientpositive/llap/orc_llap_counters.q.out 65eec521a2 
>   ql/src/test/results/clientpositive/llap/vector_between_in.q.out 801dda315a 
>   ql/src/test/results/clientpositive/llap/vector_string_decimal.q.out 
> 54d9914caa 
>   
> ql/src/test/results/clientpositive/llap/vector_windowing_multipartitioning.q.out
>  725ed34acb 
>   ql/src/test/results/clientpositive/llap/vector_windowing_navfn.q.out 
> 74ac56d1c6 
>   ql/src/test/results/clientpositive/llap/vectorized_case.q.out d444ae86a1 
>   
> ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out
>  ba004e9716 
>   ql/src/test/results/clientpositive/pcr.q.out 919b71234d 
>   ql/src/test/results/clientpositive/perf/spark/query13.q.out fb2a061c63 
>   ql/src/test/results/clientpositive/perf/spark/query15.q.out 3d6fbdac77 
>   ql/src/test/results/clientpositive/perf/spark/query34.q.out b40081e4f0 
>   ql/src/test/results/clientpositive/perf/spark/query48.q.out 60a4767a14 
>   ql/src/test/results/clientpositive/perf/spark/query53.q.out 2b1cdfea98 
>   ql/src/test/results/clientpositive/perf/spark/query63.q.out b506455dbf 
>   ql/src/test/results/clientpositive/perf/spark/query71.q.out bf9c06debf 
>   ql/src/test/results/clientpositive/perf/spark/query73.q.out 20ec874e88 
>   ql/src/test/results/clientpositive/perf/spark/query85.q.out 572ba54f78 
>   ql/src/test/results/clientpositive/perf/spark/query89.q.out 1acc577669 
>   ql/src/test/results/clientpositive/perf/spark/query91.q.out de8977da51 
>   ql/src/test/results/clientpositive/perf/tez/query13.q.out 5cd4e27de3 
>   ql/src/test/results/clientpositive/perf/tez/query15.q.out 3c7ae664b1 
>   ql/src/test/results/clientpositive/perf/tez/query34.q.out 9b7b482d3b 
>   ql/src/test/results/clientpositive/perf/tez/query48.q.out 1cf8d5c0da 
>   ql/src/test/results/clientpositive/perf/tez/query53.q.out 3567534ac4 
>   ql/src/test/results/clientpositive/perf/tez/query63.q.out a5b7b5a788 
>   ql/src/test/results/clientpositive/perf/tez/query71.q.out 4521aabc9f 
>   ql/src/test/results/clientpositive/perf/tez/query73.q.out cfa5213b5e 
>   ql/src/test/results/clientpositive/perf/tez/query85.q.out 4e42d69735 
>   ql/src/test/results/clientpositive/perf/tez/query89.q.out ee3374ea5c 
>   ql/src/test/results/clientpositive/perf/tez/query91.q.out a53c7d796d 
>   ql/src/test/results/clientpositive/ppd_transform.q.out b38088f16a 
>   ql/src/test/results/clientpositive/remove_exprs_stats.q.out a9c0051371 
>   ql/src/test/results/clientpositive/spark/auto_join19.q.out d7d8caee33 
>   ql/src/test/results/clientpositive/spark/bucketsortoptimize_insert_7.q.out 
> e07904ac44 
>   ql/src/test/results/clientpositive/spark/cbo_simple_select.q.out a35edb42a8 
>   ql/src/test/results/clientpositive/spark/pcr.q.out 83437e5593 
>   ql/src/test/results/clientpositive/spark/ppd_transform.q.out 4dfc0fed6e 
>   
> ql/src/test/results/clientpositive/spark/spark_dynamic_partition_pruning.q.out
>  24202522f5 
>   ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 
> 736321b369 
>   ql/src/test/results/clientpositive/spark/vector_between_in.q.out 8b1a2be89b 
>   ql/src/test/results/clientpositive/spark/vectorized_case.q.out 0bf2a4bfa5 
>   ql/src/test/results/clientpositive/tez/explainanalyze_5.q.out 5a50431d26 
>   ql/src/test/results/clientpositive/vector_non_constant_in_expr.q.out 
> 966edad025 
>   ql/src/test/results/clientpositive/vectorized_case.q.out 828131f8c6 
> 
> 
> Diff: https://reviews.apache.org/r/68108/diff/3/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Zoltan Haindrich
> 
>

Reply via email to