You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by Jesús Camacho Rodríguez <jc...@hortonworks.com> on 2018/03/20 19:51:29 UTC

Review Request 66179: HIVE-18979

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

Review request for hive and Ashutosh Chauhan.


Bugs: HIVE-18979
    https://issues.apache.org/jira/browse/HIVE-18979


Repository: hive-git


Description
-------

HIVE-18979


Diffs
-----

  ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/functions/HiveSqlVarianceAggFunction.java PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/SqlFunctionConverter.java cb0c2b1b357c8b93c19e84e46e2793b895eff60c 
  ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java 3520d90fa8d40b2358900b58f4b45995d9c3e6fa 
  ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFSumEmptyIsZero.java 01c933c4a140f0b94614fd6e4a052cc1fb7a493f 
  ql/src/test/queries/clientpositive/groupby3.q d709d9b5ad38f3f2d6e3422d14c2bb793290c701 
  ql/src/test/queries/clientpositive/groupby3_map_skew.q f9cb46ee32a8e5639375dbb6783ffacba44b59f6 
  ql/src/test/queries/clientpositive/udaf_binarysetfunctions_no_cbo.q PRE-CREATION 
  ql/src/test/results/clientpositive/cbo_rp_groupby3_noskew_multi_distinct.q.out bece89f0d53eb23ddc40b035f535bfe92ca87a77 
  ql/src/test/results/clientpositive/count_dist_rewrite.q.out d6ff5b75cfc562fc2befa9e2d81ab0edc44713c2 
  ql/src/test/results/clientpositive/decimal_precision.q.out 3f28106685c433607748623a9a27ef350d050327 
  ql/src/test/results/clientpositive/decimal_udf.q.out e451a186fc4a2355b8d2332de360b261bdaa4ce8 
  ql/src/test/results/clientpositive/fetch_aggregation.q.out f20320fd9b45514cb30e653887128e7e1aa59253 
  ql/src/test/results/clientpositive/groupby3.q.out 7c97174830221778a4cf9876a604655bd7d8a1e0 
  ql/src/test/results/clientpositive/groupby3_map.q.out edad22b93f3fcbb9b164a93c0a2c7055e21cec2c 
  ql/src/test/results/clientpositive/groupby3_map_multi_distinct.q.out 20344640e66a808e04f14a27b69ab49082ca9996 
  ql/src/test/results/clientpositive/groupby3_map_skew.q.out e53e62c2ce773294763b57d5eaf811dd0a94682e 
  ql/src/test/results/clientpositive/groupby3_noskew.q.out 1aa4cb6ce67d061cdbd92e5589460608e222d07f 
  ql/src/test/results/clientpositive/groupby3_noskew_multi_distinct.q.out bb964e66d60a39912c7b4933a0d9237e8b528966 
  ql/src/test/results/clientpositive/groupby_grouping_sets3.q.out e894205a27ee042bce61dfbb7f7cd75293bcca61 
  ql/src/test/results/clientpositive/having2.q.out 12fae67586334750ce671ee90cad9bd5b33fc781 
  ql/src/test/results/clientpositive/limit_pushdown2.q.out 5aeb5213e54d0d21f9a9024262db5acd3703d1c2 
  ql/src/test/results/clientpositive/llap/count_dist_rewrite.q.out 347ae3780d18a32e373695153877e9798be965c5 
  ql/src/test/results/clientpositive/llap/explainuser_1.q.out 98743eb9dbe87d7c751d9aacc61b6866c135e7af 
  ql/src/test/results/clientpositive/llap/groupby3.q.out d050c4ec697f35e80fa5b4607a9714b5da336814 
  ql/src/test/results/clientpositive/llap/limit_pushdown.q.out fe6b4f96e0aa2b05a7172d6323339f732168feef 
  ql/src/test/results/clientpositive/llap/limit_pushdown3.q.out 97686cb5d1ec11131bcd88bc97593d8060f8e4b0 
  ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out cce6bc3c0a7f00dd3c26432c6fbb78b79132937b 
  ql/src/test/results/clientpositive/llap/parquet_types_vectorization.q.out 1ccdff8aa236aebad202f43357690e1602bcda25 
  ql/src/test/results/clientpositive/llap/subquery_in.q.out 277036a8e51defc8679db59ccab2d6849c7d02d6 
  ql/src/test/results/clientpositive/llap/subquery_in_having.q.out 390caf0a01928423536790a7baed10ff02c08c7d 
  ql/src/test/results/clientpositive/llap/subquery_multi.q.out 438e44470a37dc577493545be5e420be6585add8 
  ql/src/test/results/clientpositive/llap/subquery_notin.q.out 851a783fd6d0072b4b9826c37d5998579d7a36fc 
  ql/src/test/results/clientpositive/llap/subquery_scalar.q.out 1483651f624c951cdd1634d852d7c48638f05233 
  ql/src/test/results/clientpositive/llap/subquery_select.q.out abbfffd9bea9020d538975477aaf6d61da20cc85 
  ql/src/test/results/clientpositive/llap/vector_aggregate_9.q.out 5d4bfe7fa4412904a604a3d309779e85b67e9864 
  ql/src/test/results/clientpositive/llap/vector_cast_constant.q.out 4cb6213b891cc156118cb37a8d182813dc3b0491 
  ql/src/test/results/clientpositive/llap/vector_decimal_aggregate.q.out 4bb8a0105912c7e83ba64586d6d4cd7965528d40 
  ql/src/test/results/clientpositive/llap/vector_decimal_precision.q.out 18b903b3c3fff1ff3fc5fee5f1f2a2fde34457f9 
  ql/src/test/results/clientpositive/llap/vector_decimal_udf.q.out 59b3c4a0177de56d771d8c6e4d00492257f746e6 
  ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3.q.out 80ecd59a160b71a235aa1239c93b396d599f229e 
  ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3_dec.q.out dabc987e6b1e4c199c927e039def7bb1eeb49449 
  ql/src/test/results/clientpositive/llap/vector_groupby_reduce.q.out c21a4fc091cccb5255e5defbbdc4f3ea5dab9ddb 
  ql/src/test/results/clientpositive/llap/vector_ptf_1.q.out 8d9ffb84108e840f5ff7d8b810bd5703691fc230 
  ql/src/test/results/clientpositive/llap/vector_reuse_scratchcols.q.out 9eaf293e653eaf476b449f3a99122ac02fb7d1bd 
  ql/src/test/results/clientpositive/llap/vector_windowing.q.out a82126515ccf1361d407efd857b087bcc83acc8f 
  ql/src/test/results/clientpositive/llap/vectorization_0.q.out 1a846ab5958c357664b09b5dd173b80c72e2da6f 
  ql/src/test/results/clientpositive/llap/vectorization_1.q.out dbee077cc90b7bab53bc41b88db79b072d73a1e0 
  ql/src/test/results/clientpositive/llap/vectorization_12.q.out c9faf5596d55077e31bf3ee269c2a4dc1302dbbf 
  ql/src/test/results/clientpositive/llap/vectorization_13.q.out 82982e68f1e6d67d9bc34168d146c3d49f90b8bf 
  ql/src/test/results/clientpositive/llap/vectorization_14.q.out eaf51570ec0ec6c361ca5f10a6e0db8b2b9e3660 
  ql/src/test/results/clientpositive/llap/vectorization_15.q.out 088721296a17b9c8e72b0b38066193e96382e6f9 
  ql/src/test/results/clientpositive/llap/vectorization_16.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
  ql/src/test/results/clientpositive/llap/vectorization_2.q.out 96badf9b059ce05f828506e1ff6afaab2711fcb2 
  ql/src/test/results/clientpositive/llap/vectorization_3.q.out b472c2d7969b96d488937796ad384f01b5e9fc7c 
  ql/src/test/results/clientpositive/llap/vectorization_4.q.out 122f3fbb3fa041da2b74120b3adff517cc9439ea 
  ql/src/test/results/clientpositive/llap/vectorization_9.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
  ql/src/test/results/clientpositive/llap/vectorization_input_format_excludes.q.out ad6bae763af3de1431b8ba758689123c28bd65f0 
  ql/src/test/results/clientpositive/llap/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
  ql/src/test/results/clientpositive/llap/vectorization_pushdown.q.out ca2aa87176752b2233a93d236269841bee55fe13 
  ql/src/test/results/clientpositive/llap/vectorization_short_regress.q.out 1023143f977cb537b88615ed4cc0aed3239e354f 
  ql/src/test/results/clientpositive/llap/vectorized_mapjoin.q.out 0dff57afa65bf17a212994aa3361759c1d088517 
  ql/src/test/results/clientpositive/llap/vectorized_parquet.q.out e26f92b6f8e2853c23f8acb328b53fba12e1eb19 
  ql/src/test/results/clientpositive/llap/vectorized_parquet_types.q.out 92c6a734d8af2af193bf19da6dee36abc2abde28 
  ql/src/test/results/clientpositive/llap/vectorized_shufflejoin.q.out 72216d3383b44e8fff8ac0e005dc1e6ba183df5a 
  ql/src/test/results/clientpositive/llap/vectorized_timestamp.q.out 3fb968fd4b4dfdedce711836ef320e246b181c1f 
  ql/src/test/results/clientpositive/llap/vectorized_timestamp_funcs.q.out c88ba5d67d7ccdb28e3bf52d16ab36ecd86fee2e 
  ql/src/test/results/clientpositive/parquet_types_non_dictionary_encoding_vectorization.q.out 9f7339515a81e1d2b90275d5919c2623981d21be 
  ql/src/test/results/clientpositive/parquet_types_vectorization.q.out 54b174205553239cc8c5a0c3dbc1b2b3d96ad9da 
  ql/src/test/results/clientpositive/parquet_vectorization_0.q.out 4b3502fd22941af9484e85e2983eddc404052e2d 
  ql/src/test/results/clientpositive/parquet_vectorization_1.q.out 42cbf3542d3a7b3af9923f638ee6451fa7f8e981 
  ql/src/test/results/clientpositive/parquet_vectorization_12.q.out da3d4ad5120b3fe449ae20b6f9a374e81b9f2606 
  ql/src/test/results/clientpositive/parquet_vectorization_13.q.out bd6f5819a123089e5481f81a68676096dea24f84 
  ql/src/test/results/clientpositive/parquet_vectorization_14.q.out 91162ace81aaf961fa4b3bac4e8fda019bd656f0 
  ql/src/test/results/clientpositive/parquet_vectorization_15.q.out 2c2ac85606cf94969c131ce04b10cc48d3862df8 
  ql/src/test/results/clientpositive/parquet_vectorization_16.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
  ql/src/test/results/clientpositive/parquet_vectorization_2.q.out 6f35ea0505c36e7a1ece7f31be0d8ed4aff77948 
  ql/src/test/results/clientpositive/parquet_vectorization_3.q.out 5df9c540e7c63b006ec9528ca4f9f22db4dc3c60 
  ql/src/test/results/clientpositive/parquet_vectorization_4.q.out c2956183890461bbc420685c5fa37b3676cd33b3 
  ql/src/test/results/clientpositive/parquet_vectorization_9.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
  ql/src/test/results/clientpositive/parquet_vectorization_limit.q.out b07cbba5b02d462c55975fe4e37ad339581a681b 
  ql/src/test/results/clientpositive/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
  ql/src/test/results/clientpositive/parquet_vectorization_pushdown.q.out 79024e3d08e7762621a62e01d8f42402ca18d018 
  ql/src/test/results/clientpositive/perf/spark/query1.q.out 58a833ba52a60c92167a38e11c94093022a9fe52 
  ql/src/test/results/clientpositive/perf/spark/query13.q.out f4996dd0dd72bff58d029928cfc2585d2800e94c 
  ql/src/test/results/clientpositive/perf/spark/query17.q.out 7b12a39114bb7ff92be717a338d46d19217dd003 
  ql/src/test/results/clientpositive/perf/spark/query18.q.out 0da17daddac779e5f2e7dc0cba38679bab7b5464 
  ql/src/test/results/clientpositive/perf/spark/query22.q.out 0353312009267045ab4afa133ac951a10ee56d5e 
  ql/src/test/results/clientpositive/perf/spark/query24.q.out 54c607a890927ca0ac1885663d93dfc1aea50bc9 
  ql/src/test/results/clientpositive/perf/spark/query26.q.out b0f64e1e8fc803bc104f45fec74ad8a94c9599d4 
  ql/src/test/results/clientpositive/perf/spark/query27.q.out 052f25ea6899f9ab196f04dfc448220814551c5e 
  ql/src/test/results/clientpositive/perf/spark/query28.q.out fb7e19856b137db9e18efcb258dcf4d4b827e02f 
  ql/src/test/results/clientpositive/perf/spark/query30.q.out 7a0c78dbdc0da26976d67cc421befccd969bd143 
  ql/src/test/results/clientpositive/perf/spark/query32.q.out 6f614e611fb1cc26f7178f477892f97258de0326 
  ql/src/test/results/clientpositive/perf/spark/query35.q.out 703131566a718d1a5954f03a297ef818403227b2 
  ql/src/test/results/clientpositive/perf/spark/query39.q.out 51fcc84e25bf76665646c5a6e0c2fff9854a698b 
  ql/src/test/results/clientpositive/perf/spark/query44.q.out 4c90d24f3834b1d9e2866b52faa5a9084f53904f 
  ql/src/test/results/clientpositive/perf/spark/query6.q.out 3e464f13280bd6f3880b0925f794c506eedbeda0 
  ql/src/test/results/clientpositive/perf/spark/query65.q.out 860a9bacc44129c6aa5a511c28417e9bec8ebd38 
  ql/src/test/results/clientpositive/perf/spark/query7.q.out b0979c0d46c92b6e2fa928b8924864f9d6dccec2 
  ql/src/test/results/clientpositive/perf/spark/query81.q.out be6a5fa3f8e3ca1ad881d511522653f15b9ecd93 
  ql/src/test/results/clientpositive/perf/spark/query85.q.out b4a4990a527828692aac73d0827c75f7e054bb36 
  ql/src/test/results/clientpositive/perf/spark/query9.q.out 49c6b7f5f84f4a644799d7a90004ab6b7564baac 
  ql/src/test/results/clientpositive/perf/spark/query92.q.out 1b73ab58782cda60593d7914d4b89092a9018f62 
  ql/src/test/results/clientpositive/perf/tez/query1.q.out ad350c12414185effce3c9520c3d8fb2b6a455ed 
  ql/src/test/results/clientpositive/perf/tez/query13.q.out 7cb54498d414845265a986587e4217f461c11fc9 
  ql/src/test/results/clientpositive/perf/tez/query14.q.out 1cffcb010dd4b35143abd63667a11293dcbac0ee 
  ql/src/test/results/clientpositive/perf/tez/query17.q.out 7c195c2f1d9408e21a7c2a8a24d1825495371897 
  ql/src/test/results/clientpositive/perf/tez/query18.q.out adb9682fc2eb315dd970e26e1a7e0bc5291a92ed 
  ql/src/test/results/clientpositive/perf/tez/query22.q.out efc87ede40206fa302ee03729768d5589c5433e7 
  ql/src/test/results/clientpositive/perf/tez/query24.q.out 5cbbea335f722a183281fac193e0dadbff605ed9 
  ql/src/test/results/clientpositive/perf/tez/query26.q.out 8990298822a12712a521d1a7c49000d72f343b63 
  ql/src/test/results/clientpositive/perf/tez/query27.q.out adb1bb7f1e03432b0b71535c53a137cdd8306834 
  ql/src/test/results/clientpositive/perf/tez/query28.q.out 33dc1ae513d95524e103bfd58066be83b4183757 
  ql/src/test/results/clientpositive/perf/tez/query30.q.out 93ce9cd7eb26b25610da6cc177094d285e419f9f 
  ql/src/test/results/clientpositive/perf/tez/query32.q.out adb4377fb67a4c16bb256e99b7e5f070c11c6c3c 
  ql/src/test/results/clientpositive/perf/tez/query35.q.out decbadbdcda359ba896a60e47d32bfb63ead1839 
  ql/src/test/results/clientpositive/perf/tez/query39.q.out fdcd65135128fb6ca5b7c29f344c33475942ee50 
  ql/src/test/results/clientpositive/perf/tez/query44.q.out b982de041f8be8b2dd0d66e3e554f8931140490b 
  ql/src/test/results/clientpositive/perf/tez/query6.q.out 1cd69f755a1273fa8d60b2f08f8c3b190f818cac 
  ql/src/test/results/clientpositive/perf/tez/query65.q.out 0091ad022e595f9504dc8510145d5a365d9bde6e 
  ql/src/test/results/clientpositive/perf/tez/query7.q.out 00628dbce9ba575544ba9becf7a3c7fddcbe1b1b 
  ql/src/test/results/clientpositive/perf/tez/query81.q.out 5fb04b29f70a1db0a849b79ef2fa0b1785c25809 
  ql/src/test/results/clientpositive/perf/tez/query85.q.out abba10da7af9c9190b865463e6d02e456e2e10b0 
  ql/src/test/results/clientpositive/perf/tez/query9.q.out 24de6f2e3a00ecb9c58778c542837d33a5b2d8f7 
  ql/src/test/results/clientpositive/perf/tez/query92.q.out 6009fdf17191d97edfae9fd23c12fad4ab499fbd 
  ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out cf78358e272297d9e3e953401812ca20609de370 
  ql/src/test/results/clientpositive/spark/groupby3.q.out c314763db20fd8604371c5a7e0e3fc3937eabfe3 
  ql/src/test/results/clientpositive/spark/groupby3_map.q.out 9caf47b676dfc9996d5bdb6a2b1fc28ba7a7e4b8 
  ql/src/test/results/clientpositive/spark/groupby3_map_multi_distinct.q.out 678276115f96c2d17b1f1b17936d5eaee56a8b72 
  ql/src/test/results/clientpositive/spark/groupby3_map_skew.q.out 2f101601fe4657eb9dcc9e7827051a73010de17d 
  ql/src/test/results/clientpositive/spark/groupby3_noskew.q.out d07eea5fe6f5f63a17599b8ac4ddc41e44d55ee0 
  ql/src/test/results/clientpositive/spark/groupby3_noskew_multi_distinct.q.out 8bcb91299107bceca2eb37f63e112812d35efb4a 
  ql/src/test/results/clientpositive/spark/limit_pushdown.q.out 82ba94a52b61b347424b9913b6489e04f76188e8 
  ql/src/test/results/clientpositive/spark/limit_pushdown2.q.out 62c26e6224603f54aa7da9e89da845695b83b59f 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_0.q.out f0318a3c6cb8de176b9fe988dbf890da58bcf28f 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_1.q.out 18379f257bc5cd886318a7db5a641b8994043807 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_12.q.out df85ce3c666a7423ad866d8eb7c3b24a4570ca14 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_13.q.out e4db32c9f327570f25a2e1033bf8364f7170b8ff 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_14.q.out aef374a00744842666ede91664382f62760107ab 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_15.q.out 24cdf069f69583c41b5424f122ae4805130b20fb 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_16.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_2.q.out 8b3c5f2a2de82a89bd84d131b527832467f0a8b1 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_3.q.out dd3532b4ffb116ccdfa4d031af6d0bae62f7a20e 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_4.q.out 4a7b0e08f8223f705180b51391d9026bc343540a 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_9.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_limit.q.out ce188a058a2a494bf655277e32f9742112a00a96 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
  ql/src/test/results/clientpositive/spark/parquet_vectorization_pushdown.q.out a95898f8efe7a7e838acb5fda2b041a685fdf2c2 
  ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 1e5d4569cf6f724f2db9157237cf5af3a2524090 
  ql/src/test/results/clientpositive/spark/subquery_in.q.out 7df930039a3946e27d293b9e470afb3946cce9ad 
  ql/src/test/results/clientpositive/spark/subquery_multi.q.out 32e0983bf4a9a43d51d92e4331c09f9a77f5e0c7 
  ql/src/test/results/clientpositive/spark/subquery_notin.q.out 82a1304a93bac41f8a2cbeb42a11de1c753df81a 
  ql/src/test/results/clientpositive/spark/subquery_select.q.out 6d839facd63fef843acb3c97950fb030c78e2ea0 
  ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out 0a67096ee2b28cf20f6551b3ff864cb8a9a863f7 
  ql/src/test/results/clientpositive/spark/vector_cast_constant.q.out d81781e8813ca3d6035a998f53694a83462c378d 
  ql/src/test/results/clientpositive/spark/vector_decimal_aggregate.q.out 98c709c872cd19395a21025c03c7be7dac655129 
  ql/src/test/results/clientpositive/spark/vectorization_0.q.out ec7387640232658993e2c2b2562c297680e5c583 
  ql/src/test/results/clientpositive/spark/vectorization_1.q.out a5d4a14de91e48c7d65ce171ccb9a493f983eb07 
  ql/src/test/results/clientpositive/spark/vectorization_12.q.out 55e3ad6981f3388090998163acffc6717426a459 
  ql/src/test/results/clientpositive/spark/vectorization_13.q.out de501e7d10de8beac16c34c416e2ab34c9e65397 
  ql/src/test/results/clientpositive/spark/vectorization_14.q.out b583ceeead6f6c673dbadd556c25794d42874104 
  ql/src/test/results/clientpositive/spark/vectorization_15.q.out 70aacfcb9ed928d9e0e1509734f58a01695b105f 
  ql/src/test/results/clientpositive/spark/vectorization_16.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
  ql/src/test/results/clientpositive/spark/vectorization_2.q.out f1ee93662faeb4758976f293b91d16e617e3f252 
  ql/src/test/results/clientpositive/spark/vectorization_3.q.out c78de728c5471d759a363608bd89d98c05882cbd 
  ql/src/test/results/clientpositive/spark/vectorization_4.q.out c9246510aa698fd98aed0c24cafd28dbdef90e9c 
  ql/src/test/results/clientpositive/spark/vectorization_9.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
  ql/src/test/results/clientpositive/spark/vectorization_input_format_excludes.q.out 01eb4b46a9d443ebcd0b514c0223a8d6e6df46cb 
  ql/src/test/results/clientpositive/spark/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
  ql/src/test/results/clientpositive/spark/vectorization_pushdown.q.out 6d525518cb60f7f792954fcfadd1c0b6ec5e703a 
  ql/src/test/results/clientpositive/spark/vectorization_short_regress.q.out c04f2002695ea5f50378552c377e9a79ef2456e9 
  ql/src/test/results/clientpositive/spark/vectorized_mapjoin.q.out 93ab21e6d951602b962a3464fcbe825152d93c00 
  ql/src/test/results/clientpositive/spark/vectorized_shufflejoin.q.out fa67ae7eddbe24520b947cb107d44018b87d6a50 
  ql/src/test/results/clientpositive/spark/vectorized_timestamp_funcs.q.out 2fccd289a4fef744b0029d72dca2e0286cffe768 
  ql/src/test/results/clientpositive/tez/vectorization_limit.q.out b8a1f9057c4c8425f1cf22e6d57cdb4fd9abe5dc 
  ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out af058a44e4b54137d3186e943e3eb8424bbd22b4 
  ql/src/test/results/clientpositive/udaf_binarysetfunctions_no_cbo.q.out PRE-CREATION 
  ql/src/test/results/clientpositive/udaf_number_format.q.out 14ab23dc0e077486554882f49c1489274211523f 
  ql/src/test/results/clientpositive/udf3.q.out 9f9f56fe02d0eae1f683558701c65fa244fe48cf 
  ql/src/test/results/clientpositive/udf8.q.out d75cd782175b857314b5ef19d90d00519630220b 
  ql/src/test/results/clientpositive/union_remove_6_subq.q.out 096d98db3ad579675c9c4763ffbf37333ee70f6d 
  ql/src/test/results/clientpositive/vector_aggregate_9.q.out 6cf99bb0b8a39772a249272cd8c6d186a7232fb6 
  ql/src/test/results/clientpositive/vector_cast_constant.q.out 4b06016702113157bdc3b566a1226df9b6ab8a3d 
  ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out c17951a738647c43cd54cd7b9c8e8cdcaa7de685 
  ql/src/test/results/clientpositive/vector_decimal_precision.q.out 6e41f536de776eb271c4b9c00fc9bfa32470c33b 
  ql/src/test/results/clientpositive/vector_groupby_reduce.q.out 5ac1ea898570378c58b281eb1d6c410adbbf0126 
  ql/src/test/results/clientpositive/vectorization_1.q.out 97334a3fb2240197ec5b3fe236bb4003f902bea8 
  ql/src/test/results/clientpositive/vectorization_12.q.out ba0882f447add5985c8b8389329b5c7d8c4731d7 
  ql/src/test/results/clientpositive/vectorization_13.q.out e41a0d7e529a7eef3fc7fb9457690a35a2ad17b3 
  ql/src/test/results/clientpositive/vectorization_14.q.out 02a986c111755b3664597330d167fa0a6165e387 
  ql/src/test/results/clientpositive/vectorization_15.q.out a8d681b06e45da5930853787479ede07ce5f852d 
  ql/src/test/results/clientpositive/vectorization_16.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
  ql/src/test/results/clientpositive/vectorization_2.q.out 1df05af721b554fa17bde03859793f9ae80fb70c 
  ql/src/test/results/clientpositive/vectorization_3.q.out 0cee2546f60190912ce95d7c866e2f3b970df027 
  ql/src/test/results/clientpositive/vectorization_4.q.out 014750bd28a6119db957d3d188af41e209c8e862 
  ql/src/test/results/clientpositive/vectorization_9.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
  ql/src/test/results/clientpositive/vectorization_limit.q.out a4ff11daa72c4a0f8419c9cf2c3cb59a925e860e 
  ql/src/test/results/clientpositive/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
  ql/src/test/results/clientpositive/vectorization_pushdown.q.out a13a0a08ceae35883da919ba1d0320795a64d726 
  ql/src/test/results/clientpositive/vectorized_distinct_gby.q.out dc7add7a61a97dd9e16699c33f36dc3f4e9d918c 
  ql/src/test/results/clientpositive/vectorized_mapjoin.q.out a6fee455ae73aaece5150f473e2b6701b53cca66 
  ql/src/test/results/clientpositive/vectorized_parquet_types.q.out 0dc582f77fa716b8919c4626b5d821025b654fe5 
  ql/src/test/results/clientpositive/vectorized_shufflejoin.q.out 6edb69aaad6b90164632e7ca7d9e58e77e920638 
  ql/src/test/results/clientpositive/vectorized_timestamp.q.out fb0672c00283958087b7c82768f5ad122596386b 
  ql/src/test/results/clientpositive/vectorized_timestamp_funcs.q.out 2ccff7b9197adab0d9283197ad701d0866d4ed81 
  ql/src/test/results/clientpositive/view_cbo.q.out c740596e70a2300e2828a898c1e954c0242fda9c 


Diff: https://reviews.apache.org/r/66179/diff/1/


Testing
-------


Thanks,

Jesús Camacho Rodríguez


Re: Review Request 66179: HIVE-18979

Posted by Ashutosh Chauhan <ha...@apache.org>.

> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java
> > Lines 177 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983484#file1983484line177>
> >
> >     I wonder if project and aggregate transform can be generate together such that instead of generating x*x in RexNode of aggregate. Aggregate only generates x and then project computes x*x Doing that may avoid project x*x in addition to x before Gby. That will save both cpu and network.
> >     Could be a follow-up.
> 
> Jesús Camacho Rodríguez wrote:
>     This would need major changes in the implementation of Aggregate operator itself, since the group by columns are not defined by RexNode but rather by a bitset containing the input columns that we are grouping by.

Alternative would be to write rule which fires after this rule and matches on SEL-GBY-SEL where it removes x*x from first SEL and computes and uses it in 2nd SEL.


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/queries/clientpositive/groupby3.q
> > Lines 1 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983488#file1983488line1>
> >
> >     Whats the reason for this?
> 
> Jesús Camacho Rodríguez wrote:
>     Skew group by (set hive.groupby.skewindata=true) does not work when there are multiple DISTINCT aggregate operations. The rule might produce multiple DISTINCT from a single one (e.g., AVG(DISTINCT x) decomposed into SUM(DISTINCT x) and COUNT(DISTINCT x) ) and hence test fails. In non-tests environment, we would just fail CBO planning. I thought this was acceptable (at least for the time being), since since property is off by default. I can leave a comment in the test explaining this. Please let me know what you think.

I see. Turning off cbo is fine here.


- Ashutosh


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


On March 20, 2018, 7:51 p.m., Jesús Camacho Rodríguez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/66179/
> -----------------------------------------------------------
> 
> (Updated March 20, 2018, 7:51 p.m.)
> 
> 
> Review request for hive and Ashutosh Chauhan.
> 
> 
> Bugs: HIVE-18979
>     https://issues.apache.org/jira/browse/HIVE-18979
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HIVE-18979
> 
> 
> Diffs
> -----
> 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/functions/HiveSqlVarianceAggFunction.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/SqlFunctionConverter.java cb0c2b1b357c8b93c19e84e46e2793b895eff60c 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java 3520d90fa8d40b2358900b58f4b45995d9c3e6fa 
>   ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFSumEmptyIsZero.java 01c933c4a140f0b94614fd6e4a052cc1fb7a493f 
>   ql/src/test/queries/clientpositive/groupby3.q d709d9b5ad38f3f2d6e3422d14c2bb793290c701 
>   ql/src/test/queries/clientpositive/groupby3_map_skew.q f9cb46ee32a8e5639375dbb6783ffacba44b59f6 
>   ql/src/test/queries/clientpositive/udaf_binarysetfunctions_no_cbo.q PRE-CREATION 
>   ql/src/test/results/clientpositive/cbo_rp_groupby3_noskew_multi_distinct.q.out bece89f0d53eb23ddc40b035f535bfe92ca87a77 
>   ql/src/test/results/clientpositive/count_dist_rewrite.q.out d6ff5b75cfc562fc2befa9e2d81ab0edc44713c2 
>   ql/src/test/results/clientpositive/decimal_precision.q.out 3f28106685c433607748623a9a27ef350d050327 
>   ql/src/test/results/clientpositive/decimal_udf.q.out e451a186fc4a2355b8d2332de360b261bdaa4ce8 
>   ql/src/test/results/clientpositive/fetch_aggregation.q.out f20320fd9b45514cb30e653887128e7e1aa59253 
>   ql/src/test/results/clientpositive/groupby3.q.out 7c97174830221778a4cf9876a604655bd7d8a1e0 
>   ql/src/test/results/clientpositive/groupby3_map.q.out edad22b93f3fcbb9b164a93c0a2c7055e21cec2c 
>   ql/src/test/results/clientpositive/groupby3_map_multi_distinct.q.out 20344640e66a808e04f14a27b69ab49082ca9996 
>   ql/src/test/results/clientpositive/groupby3_map_skew.q.out e53e62c2ce773294763b57d5eaf811dd0a94682e 
>   ql/src/test/results/clientpositive/groupby3_noskew.q.out 1aa4cb6ce67d061cdbd92e5589460608e222d07f 
>   ql/src/test/results/clientpositive/groupby3_noskew_multi_distinct.q.out bb964e66d60a39912c7b4933a0d9237e8b528966 
>   ql/src/test/results/clientpositive/groupby_grouping_sets3.q.out e894205a27ee042bce61dfbb7f7cd75293bcca61 
>   ql/src/test/results/clientpositive/having2.q.out 12fae67586334750ce671ee90cad9bd5b33fc781 
>   ql/src/test/results/clientpositive/limit_pushdown2.q.out 5aeb5213e54d0d21f9a9024262db5acd3703d1c2 
>   ql/src/test/results/clientpositive/llap/count_dist_rewrite.q.out 347ae3780d18a32e373695153877e9798be965c5 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 98743eb9dbe87d7c751d9aacc61b6866c135e7af 
>   ql/src/test/results/clientpositive/llap/groupby3.q.out d050c4ec697f35e80fa5b4607a9714b5da336814 
>   ql/src/test/results/clientpositive/llap/limit_pushdown.q.out fe6b4f96e0aa2b05a7172d6323339f732168feef 
>   ql/src/test/results/clientpositive/llap/limit_pushdown3.q.out 97686cb5d1ec11131bcd88bc97593d8060f8e4b0 
>   ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out cce6bc3c0a7f00dd3c26432c6fbb78b79132937b 
>   ql/src/test/results/clientpositive/llap/parquet_types_vectorization.q.out 1ccdff8aa236aebad202f43357690e1602bcda25 
>   ql/src/test/results/clientpositive/llap/subquery_in.q.out 277036a8e51defc8679db59ccab2d6849c7d02d6 
>   ql/src/test/results/clientpositive/llap/subquery_in_having.q.out 390caf0a01928423536790a7baed10ff02c08c7d 
>   ql/src/test/results/clientpositive/llap/subquery_multi.q.out 438e44470a37dc577493545be5e420be6585add8 
>   ql/src/test/results/clientpositive/llap/subquery_notin.q.out 851a783fd6d0072b4b9826c37d5998579d7a36fc 
>   ql/src/test/results/clientpositive/llap/subquery_scalar.q.out 1483651f624c951cdd1634d852d7c48638f05233 
>   ql/src/test/results/clientpositive/llap/subquery_select.q.out abbfffd9bea9020d538975477aaf6d61da20cc85 
>   ql/src/test/results/clientpositive/llap/vector_aggregate_9.q.out 5d4bfe7fa4412904a604a3d309779e85b67e9864 
>   ql/src/test/results/clientpositive/llap/vector_cast_constant.q.out 4cb6213b891cc156118cb37a8d182813dc3b0491 
>   ql/src/test/results/clientpositive/llap/vector_decimal_aggregate.q.out 4bb8a0105912c7e83ba64586d6d4cd7965528d40 
>   ql/src/test/results/clientpositive/llap/vector_decimal_precision.q.out 18b903b3c3fff1ff3fc5fee5f1f2a2fde34457f9 
>   ql/src/test/results/clientpositive/llap/vector_decimal_udf.q.out 59b3c4a0177de56d771d8c6e4d00492257f746e6 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3.q.out 80ecd59a160b71a235aa1239c93b396d599f229e 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3_dec.q.out dabc987e6b1e4c199c927e039def7bb1eeb49449 
>   ql/src/test/results/clientpositive/llap/vector_groupby_reduce.q.out c21a4fc091cccb5255e5defbbdc4f3ea5dab9ddb 
>   ql/src/test/results/clientpositive/llap/vector_ptf_1.q.out 8d9ffb84108e840f5ff7d8b810bd5703691fc230 
>   ql/src/test/results/clientpositive/llap/vector_reuse_scratchcols.q.out 9eaf293e653eaf476b449f3a99122ac02fb7d1bd 
>   ql/src/test/results/clientpositive/llap/vector_windowing.q.out a82126515ccf1361d407efd857b087bcc83acc8f 
>   ql/src/test/results/clientpositive/llap/vectorization_0.q.out 1a846ab5958c357664b09b5dd173b80c72e2da6f 
>   ql/src/test/results/clientpositive/llap/vectorization_1.q.out dbee077cc90b7bab53bc41b88db79b072d73a1e0 
>   ql/src/test/results/clientpositive/llap/vectorization_12.q.out c9faf5596d55077e31bf3ee269c2a4dc1302dbbf 
>   ql/src/test/results/clientpositive/llap/vectorization_13.q.out 82982e68f1e6d67d9bc34168d146c3d49f90b8bf 
>   ql/src/test/results/clientpositive/llap/vectorization_14.q.out eaf51570ec0ec6c361ca5f10a6e0db8b2b9e3660 
>   ql/src/test/results/clientpositive/llap/vectorization_15.q.out 088721296a17b9c8e72b0b38066193e96382e6f9 
>   ql/src/test/results/clientpositive/llap/vectorization_16.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_2.q.out 96badf9b059ce05f828506e1ff6afaab2711fcb2 
>   ql/src/test/results/clientpositive/llap/vectorization_3.q.out b472c2d7969b96d488937796ad384f01b5e9fc7c 
>   ql/src/test/results/clientpositive/llap/vectorization_4.q.out 122f3fbb3fa041da2b74120b3adff517cc9439ea 
>   ql/src/test/results/clientpositive/llap/vectorization_9.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_input_format_excludes.q.out ad6bae763af3de1431b8ba758689123c28bd65f0 
>   ql/src/test/results/clientpositive/llap/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/llap/vectorization_pushdown.q.out ca2aa87176752b2233a93d236269841bee55fe13 
>   ql/src/test/results/clientpositive/llap/vectorization_short_regress.q.out 1023143f977cb537b88615ed4cc0aed3239e354f 
>   ql/src/test/results/clientpositive/llap/vectorized_mapjoin.q.out 0dff57afa65bf17a212994aa3361759c1d088517 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet.q.out e26f92b6f8e2853c23f8acb328b53fba12e1eb19 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet_types.q.out 92c6a734d8af2af193bf19da6dee36abc2abde28 
>   ql/src/test/results/clientpositive/llap/vectorized_shufflejoin.q.out 72216d3383b44e8fff8ac0e005dc1e6ba183df5a 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp.q.out 3fb968fd4b4dfdedce711836ef320e246b181c1f 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp_funcs.q.out c88ba5d67d7ccdb28e3bf52d16ab36ecd86fee2e 
>   ql/src/test/results/clientpositive/parquet_types_non_dictionary_encoding_vectorization.q.out 9f7339515a81e1d2b90275d5919c2623981d21be 
>   ql/src/test/results/clientpositive/parquet_types_vectorization.q.out 54b174205553239cc8c5a0c3dbc1b2b3d96ad9da 
>   ql/src/test/results/clientpositive/parquet_vectorization_0.q.out 4b3502fd22941af9484e85e2983eddc404052e2d 
>   ql/src/test/results/clientpositive/parquet_vectorization_1.q.out 42cbf3542d3a7b3af9923f638ee6451fa7f8e981 
>   ql/src/test/results/clientpositive/parquet_vectorization_12.q.out da3d4ad5120b3fe449ae20b6f9a374e81b9f2606 
>   ql/src/test/results/clientpositive/parquet_vectorization_13.q.out bd6f5819a123089e5481f81a68676096dea24f84 
>   ql/src/test/results/clientpositive/parquet_vectorization_14.q.out 91162ace81aaf961fa4b3bac4e8fda019bd656f0 
>   ql/src/test/results/clientpositive/parquet_vectorization_15.q.out 2c2ac85606cf94969c131ce04b10cc48d3862df8 
>   ql/src/test/results/clientpositive/parquet_vectorization_16.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_2.q.out 6f35ea0505c36e7a1ece7f31be0d8ed4aff77948 
>   ql/src/test/results/clientpositive/parquet_vectorization_3.q.out 5df9c540e7c63b006ec9528ca4f9f22db4dc3c60 
>   ql/src/test/results/clientpositive/parquet_vectorization_4.q.out c2956183890461bbc420685c5fa37b3676cd33b3 
>   ql/src/test/results/clientpositive/parquet_vectorization_9.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_limit.q.out b07cbba5b02d462c55975fe4e37ad339581a681b 
>   ql/src/test/results/clientpositive/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/parquet_vectorization_pushdown.q.out 79024e3d08e7762621a62e01d8f42402ca18d018 
>   ql/src/test/results/clientpositive/perf/spark/query1.q.out 58a833ba52a60c92167a38e11c94093022a9fe52 
>   ql/src/test/results/clientpositive/perf/spark/query13.q.out f4996dd0dd72bff58d029928cfc2585d2800e94c 
>   ql/src/test/results/clientpositive/perf/spark/query17.q.out 7b12a39114bb7ff92be717a338d46d19217dd003 
>   ql/src/test/results/clientpositive/perf/spark/query18.q.out 0da17daddac779e5f2e7dc0cba38679bab7b5464 
>   ql/src/test/results/clientpositive/perf/spark/query22.q.out 0353312009267045ab4afa133ac951a10ee56d5e 
>   ql/src/test/results/clientpositive/perf/spark/query24.q.out 54c607a890927ca0ac1885663d93dfc1aea50bc9 
>   ql/src/test/results/clientpositive/perf/spark/query26.q.out b0f64e1e8fc803bc104f45fec74ad8a94c9599d4 
>   ql/src/test/results/clientpositive/perf/spark/query27.q.out 052f25ea6899f9ab196f04dfc448220814551c5e 
>   ql/src/test/results/clientpositive/perf/spark/query28.q.out fb7e19856b137db9e18efcb258dcf4d4b827e02f 
>   ql/src/test/results/clientpositive/perf/spark/query30.q.out 7a0c78dbdc0da26976d67cc421befccd969bd143 
>   ql/src/test/results/clientpositive/perf/spark/query32.q.out 6f614e611fb1cc26f7178f477892f97258de0326 
>   ql/src/test/results/clientpositive/perf/spark/query35.q.out 703131566a718d1a5954f03a297ef818403227b2 
>   ql/src/test/results/clientpositive/perf/spark/query39.q.out 51fcc84e25bf76665646c5a6e0c2fff9854a698b 
>   ql/src/test/results/clientpositive/perf/spark/query44.q.out 4c90d24f3834b1d9e2866b52faa5a9084f53904f 
>   ql/src/test/results/clientpositive/perf/spark/query6.q.out 3e464f13280bd6f3880b0925f794c506eedbeda0 
>   ql/src/test/results/clientpositive/perf/spark/query65.q.out 860a9bacc44129c6aa5a511c28417e9bec8ebd38 
>   ql/src/test/results/clientpositive/perf/spark/query7.q.out b0979c0d46c92b6e2fa928b8924864f9d6dccec2 
>   ql/src/test/results/clientpositive/perf/spark/query81.q.out be6a5fa3f8e3ca1ad881d511522653f15b9ecd93 
>   ql/src/test/results/clientpositive/perf/spark/query85.q.out b4a4990a527828692aac73d0827c75f7e054bb36 
>   ql/src/test/results/clientpositive/perf/spark/query9.q.out 49c6b7f5f84f4a644799d7a90004ab6b7564baac 
>   ql/src/test/results/clientpositive/perf/spark/query92.q.out 1b73ab58782cda60593d7914d4b89092a9018f62 
>   ql/src/test/results/clientpositive/perf/tez/query1.q.out ad350c12414185effce3c9520c3d8fb2b6a455ed 
>   ql/src/test/results/clientpositive/perf/tez/query13.q.out 7cb54498d414845265a986587e4217f461c11fc9 
>   ql/src/test/results/clientpositive/perf/tez/query14.q.out 1cffcb010dd4b35143abd63667a11293dcbac0ee 
>   ql/src/test/results/clientpositive/perf/tez/query17.q.out 7c195c2f1d9408e21a7c2a8a24d1825495371897 
>   ql/src/test/results/clientpositive/perf/tez/query18.q.out adb9682fc2eb315dd970e26e1a7e0bc5291a92ed 
>   ql/src/test/results/clientpositive/perf/tez/query22.q.out efc87ede40206fa302ee03729768d5589c5433e7 
>   ql/src/test/results/clientpositive/perf/tez/query24.q.out 5cbbea335f722a183281fac193e0dadbff605ed9 
>   ql/src/test/results/clientpositive/perf/tez/query26.q.out 8990298822a12712a521d1a7c49000d72f343b63 
>   ql/src/test/results/clientpositive/perf/tez/query27.q.out adb1bb7f1e03432b0b71535c53a137cdd8306834 
>   ql/src/test/results/clientpositive/perf/tez/query28.q.out 33dc1ae513d95524e103bfd58066be83b4183757 
>   ql/src/test/results/clientpositive/perf/tez/query30.q.out 93ce9cd7eb26b25610da6cc177094d285e419f9f 
>   ql/src/test/results/clientpositive/perf/tez/query32.q.out adb4377fb67a4c16bb256e99b7e5f070c11c6c3c 
>   ql/src/test/results/clientpositive/perf/tez/query35.q.out decbadbdcda359ba896a60e47d32bfb63ead1839 
>   ql/src/test/results/clientpositive/perf/tez/query39.q.out fdcd65135128fb6ca5b7c29f344c33475942ee50 
>   ql/src/test/results/clientpositive/perf/tez/query44.q.out b982de041f8be8b2dd0d66e3e554f8931140490b 
>   ql/src/test/results/clientpositive/perf/tez/query6.q.out 1cd69f755a1273fa8d60b2f08f8c3b190f818cac 
>   ql/src/test/results/clientpositive/perf/tez/query65.q.out 0091ad022e595f9504dc8510145d5a365d9bde6e 
>   ql/src/test/results/clientpositive/perf/tez/query7.q.out 00628dbce9ba575544ba9becf7a3c7fddcbe1b1b 
>   ql/src/test/results/clientpositive/perf/tez/query81.q.out 5fb04b29f70a1db0a849b79ef2fa0b1785c25809 
>   ql/src/test/results/clientpositive/perf/tez/query85.q.out abba10da7af9c9190b865463e6d02e456e2e10b0 
>   ql/src/test/results/clientpositive/perf/tez/query9.q.out 24de6f2e3a00ecb9c58778c542837d33a5b2d8f7 
>   ql/src/test/results/clientpositive/perf/tez/query92.q.out 6009fdf17191d97edfae9fd23c12fad4ab499fbd 
>   ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out cf78358e272297d9e3e953401812ca20609de370 
>   ql/src/test/results/clientpositive/spark/groupby3.q.out c314763db20fd8604371c5a7e0e3fc3937eabfe3 
>   ql/src/test/results/clientpositive/spark/groupby3_map.q.out 9caf47b676dfc9996d5bdb6a2b1fc28ba7a7e4b8 
>   ql/src/test/results/clientpositive/spark/groupby3_map_multi_distinct.q.out 678276115f96c2d17b1f1b17936d5eaee56a8b72 
>   ql/src/test/results/clientpositive/spark/groupby3_map_skew.q.out 2f101601fe4657eb9dcc9e7827051a73010de17d 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew.q.out d07eea5fe6f5f63a17599b8ac4ddc41e44d55ee0 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew_multi_distinct.q.out 8bcb91299107bceca2eb37f63e112812d35efb4a 
>   ql/src/test/results/clientpositive/spark/limit_pushdown.q.out 82ba94a52b61b347424b9913b6489e04f76188e8 
>   ql/src/test/results/clientpositive/spark/limit_pushdown2.q.out 62c26e6224603f54aa7da9e89da845695b83b59f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_0.q.out f0318a3c6cb8de176b9fe988dbf890da58bcf28f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_1.q.out 18379f257bc5cd886318a7db5a641b8994043807 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_12.q.out df85ce3c666a7423ad866d8eb7c3b24a4570ca14 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_13.q.out e4db32c9f327570f25a2e1033bf8364f7170b8ff 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_14.q.out aef374a00744842666ede91664382f62760107ab 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_15.q.out 24cdf069f69583c41b5424f122ae4805130b20fb 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_16.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_2.q.out 8b3c5f2a2de82a89bd84d131b527832467f0a8b1 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_3.q.out dd3532b4ffb116ccdfa4d031af6d0bae62f7a20e 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_4.q.out 4a7b0e08f8223f705180b51391d9026bc343540a 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_9.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_limit.q.out ce188a058a2a494bf655277e32f9742112a00a96 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_pushdown.q.out a95898f8efe7a7e838acb5fda2b041a685fdf2c2 
>   ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 1e5d4569cf6f724f2db9157237cf5af3a2524090 
>   ql/src/test/results/clientpositive/spark/subquery_in.q.out 7df930039a3946e27d293b9e470afb3946cce9ad 
>   ql/src/test/results/clientpositive/spark/subquery_multi.q.out 32e0983bf4a9a43d51d92e4331c09f9a77f5e0c7 
>   ql/src/test/results/clientpositive/spark/subquery_notin.q.out 82a1304a93bac41f8a2cbeb42a11de1c753df81a 
>   ql/src/test/results/clientpositive/spark/subquery_select.q.out 6d839facd63fef843acb3c97950fb030c78e2ea0 
>   ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out 0a67096ee2b28cf20f6551b3ff864cb8a9a863f7 
>   ql/src/test/results/clientpositive/spark/vector_cast_constant.q.out d81781e8813ca3d6035a998f53694a83462c378d 
>   ql/src/test/results/clientpositive/spark/vector_decimal_aggregate.q.out 98c709c872cd19395a21025c03c7be7dac655129 
>   ql/src/test/results/clientpositive/spark/vectorization_0.q.out ec7387640232658993e2c2b2562c297680e5c583 
>   ql/src/test/results/clientpositive/spark/vectorization_1.q.out a5d4a14de91e48c7d65ce171ccb9a493f983eb07 
>   ql/src/test/results/clientpositive/spark/vectorization_12.q.out 55e3ad6981f3388090998163acffc6717426a459 
>   ql/src/test/results/clientpositive/spark/vectorization_13.q.out de501e7d10de8beac16c34c416e2ab34c9e65397 
>   ql/src/test/results/clientpositive/spark/vectorization_14.q.out b583ceeead6f6c673dbadd556c25794d42874104 
>   ql/src/test/results/clientpositive/spark/vectorization_15.q.out 70aacfcb9ed928d9e0e1509734f58a01695b105f 
>   ql/src/test/results/clientpositive/spark/vectorization_16.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_2.q.out f1ee93662faeb4758976f293b91d16e617e3f252 
>   ql/src/test/results/clientpositive/spark/vectorization_3.q.out c78de728c5471d759a363608bd89d98c05882cbd 
>   ql/src/test/results/clientpositive/spark/vectorization_4.q.out c9246510aa698fd98aed0c24cafd28dbdef90e9c 
>   ql/src/test/results/clientpositive/spark/vectorization_9.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_input_format_excludes.q.out 01eb4b46a9d443ebcd0b514c0223a8d6e6df46cb 
>   ql/src/test/results/clientpositive/spark/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/spark/vectorization_pushdown.q.out 6d525518cb60f7f792954fcfadd1c0b6ec5e703a 
>   ql/src/test/results/clientpositive/spark/vectorization_short_regress.q.out c04f2002695ea5f50378552c377e9a79ef2456e9 
>   ql/src/test/results/clientpositive/spark/vectorized_mapjoin.q.out 93ab21e6d951602b962a3464fcbe825152d93c00 
>   ql/src/test/results/clientpositive/spark/vectorized_shufflejoin.q.out fa67ae7eddbe24520b947cb107d44018b87d6a50 
>   ql/src/test/results/clientpositive/spark/vectorized_timestamp_funcs.q.out 2fccd289a4fef744b0029d72dca2e0286cffe768 
>   ql/src/test/results/clientpositive/tez/vectorization_limit.q.out b8a1f9057c4c8425f1cf22e6d57cdb4fd9abe5dc 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out af058a44e4b54137d3186e943e3eb8424bbd22b4 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions_no_cbo.q.out PRE-CREATION 
>   ql/src/test/results/clientpositive/udaf_number_format.q.out 14ab23dc0e077486554882f49c1489274211523f 
>   ql/src/test/results/clientpositive/udf3.q.out 9f9f56fe02d0eae1f683558701c65fa244fe48cf 
>   ql/src/test/results/clientpositive/udf8.q.out d75cd782175b857314b5ef19d90d00519630220b 
>   ql/src/test/results/clientpositive/union_remove_6_subq.q.out 096d98db3ad579675c9c4763ffbf37333ee70f6d 
>   ql/src/test/results/clientpositive/vector_aggregate_9.q.out 6cf99bb0b8a39772a249272cd8c6d186a7232fb6 
>   ql/src/test/results/clientpositive/vector_cast_constant.q.out 4b06016702113157bdc3b566a1226df9b6ab8a3d 
>   ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out c17951a738647c43cd54cd7b9c8e8cdcaa7de685 
>   ql/src/test/results/clientpositive/vector_decimal_precision.q.out 6e41f536de776eb271c4b9c00fc9bfa32470c33b 
>   ql/src/test/results/clientpositive/vector_groupby_reduce.q.out 5ac1ea898570378c58b281eb1d6c410adbbf0126 
>   ql/src/test/results/clientpositive/vectorization_1.q.out 97334a3fb2240197ec5b3fe236bb4003f902bea8 
>   ql/src/test/results/clientpositive/vectorization_12.q.out ba0882f447add5985c8b8389329b5c7d8c4731d7 
>   ql/src/test/results/clientpositive/vectorization_13.q.out e41a0d7e529a7eef3fc7fb9457690a35a2ad17b3 
>   ql/src/test/results/clientpositive/vectorization_14.q.out 02a986c111755b3664597330d167fa0a6165e387 
>   ql/src/test/results/clientpositive/vectorization_15.q.out a8d681b06e45da5930853787479ede07ce5f852d 
>   ql/src/test/results/clientpositive/vectorization_16.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_2.q.out 1df05af721b554fa17bde03859793f9ae80fb70c 
>   ql/src/test/results/clientpositive/vectorization_3.q.out 0cee2546f60190912ce95d7c866e2f3b970df027 
>   ql/src/test/results/clientpositive/vectorization_4.q.out 014750bd28a6119db957d3d188af41e209c8e862 
>   ql/src/test/results/clientpositive/vectorization_9.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_limit.q.out a4ff11daa72c4a0f8419c9cf2c3cb59a925e860e 
>   ql/src/test/results/clientpositive/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/vectorization_pushdown.q.out a13a0a08ceae35883da919ba1d0320795a64d726 
>   ql/src/test/results/clientpositive/vectorized_distinct_gby.q.out dc7add7a61a97dd9e16699c33f36dc3f4e9d918c 
>   ql/src/test/results/clientpositive/vectorized_mapjoin.q.out a6fee455ae73aaece5150f473e2b6701b53cca66 
>   ql/src/test/results/clientpositive/vectorized_parquet_types.q.out 0dc582f77fa716b8919c4626b5d821025b654fe5 
>   ql/src/test/results/clientpositive/vectorized_shufflejoin.q.out 6edb69aaad6b90164632e7ca7d9e58e77e920638 
>   ql/src/test/results/clientpositive/vectorized_timestamp.q.out fb0672c00283958087b7c82768f5ad122596386b 
>   ql/src/test/results/clientpositive/vectorized_timestamp_funcs.q.out 2ccff7b9197adab0d9283197ad701d0866d4ed81 
>   ql/src/test/results/clientpositive/view_cbo.q.out c740596e70a2300e2828a898c1e954c0242fda9c 
> 
> 
> Diff: https://reviews.apache.org/r/66179/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Jesús Camacho Rodríguez
> 
>


Re: Review Request 66179: HIVE-18979

Posted by Jesús Camacho Rodríguez <jc...@hortonworks.com>.

> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java
> > Lines 177 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983484#file1983484line177>
> >
> >     I wonder if project and aggregate transform can be generate together such that instead of generating x*x in RexNode of aggregate. Aggregate only generates x and then project computes x*x Doing that may avoid project x*x in addition to x before Gby. That will save both cpu and network.
> >     Could be a follow-up.

This would need major changes in the implementation of Aggregate operator itself, since the group by columns are not defined by RexNode but rather by a bitset containing the input columns that we are grouping by.


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/queries/clientpositive/groupby3.q
> > Lines 1 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983488#file1983488line1>
> >
> >     Whats the reason for this?

Skew group by (set hive.groupby.skewindata=true) does not work when there are multiple DISTINCT aggregate operations. The rule might produce multiple DISTINCT from a single one (e.g., AVG(DISTINCT x) decomposed into SUM(DISTINCT x) and COUNT(DISTINCT x) ) and hence test fails. In non-tests environment, we would just fail CBO planning. I thought this was acceptable (at least for the time being), since since property is off by default. I can leave a comment in the test explaining this. Please let me know what you think.


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/queries/clientpositive/groupby3_map_skew.q
> > Lines 1 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983489#file1983489line1>
> >
> >     Whats the reason for this?

Idem as above.


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/decimal_udf.q.out
> > Line 1852 (original), 1852 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983494#file1983494line1852>
> >
> >     It will be good to avoid project key * key in addition to key, before Gby. Left a comment in Rule as well.

Left comment above, this could be done, but work will be non-trivial.


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out
> > Line 396 (original), 396 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983659#file1983659line396>
> >
> >     Some functions didn't get decomposed?

You are right, currently rule only supports decomposition of AVG, STDDEV_POP, STDDEV_SAMP, VAR_POP, and VAR_SAMP.
The function that are not decomposed above are: CORR(y,x), COVAR_SAMP(y,x), COVAR_POP(y,x), REGR_COUNT(y,x), REGR_SLOPE(y,x), REGR_INTERCEPT(y,x), REGR_R2(y,x), REGR_SXX(y,x), REGR_SYY(y,x), REGR_SXY(y,x), REGR_AVGX(y,x), REGR_AVGY(y,x).
I can create follow-up to explore extensions for the rule with other rewritings (I guess at least COVAR and CORR are worth supporting).


> On March 21, 2018, 11:54 p.m., Ashutosh Chauhan wrote:
> > ql/src/test/results/clientpositive/udaf_number_format.q.out
> > Line 75 (original), 79 (patched)
> > <https://reviews.apache.org/r/66179/diff/1/?file=1983661#file1983661line79>
> >
> >     avg('a') is ill-formed query. Ideally, Hive should throw exception for this. (Sql server and pg throws). But Mysql gives 0.0 so i guess we are making progress to being more in line with non-compliant db :)

Maybe if we all become non-compliant, we will re-define the standard... lol Now seriously, expression is ill-formed indeed, failure would be more logical, I remember we saw similar issues with casting of literals to NULL instead of failing. If we want to make Hive type system more strict, it could be done as part of that work.


- Jesús


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


On March 20, 2018, 7:51 p.m., Jesús Camacho Rodríguez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/66179/
> -----------------------------------------------------------
> 
> (Updated March 20, 2018, 7:51 p.m.)
> 
> 
> Review request for hive and Ashutosh Chauhan.
> 
> 
> Bugs: HIVE-18979
>     https://issues.apache.org/jira/browse/HIVE-18979
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HIVE-18979
> 
> 
> Diffs
> -----
> 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/functions/HiveSqlVarianceAggFunction.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/SqlFunctionConverter.java cb0c2b1b357c8b93c19e84e46e2793b895eff60c 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java 3520d90fa8d40b2358900b58f4b45995d9c3e6fa 
>   ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFSumEmptyIsZero.java 01c933c4a140f0b94614fd6e4a052cc1fb7a493f 
>   ql/src/test/queries/clientpositive/groupby3.q d709d9b5ad38f3f2d6e3422d14c2bb793290c701 
>   ql/src/test/queries/clientpositive/groupby3_map_skew.q f9cb46ee32a8e5639375dbb6783ffacba44b59f6 
>   ql/src/test/queries/clientpositive/udaf_binarysetfunctions_no_cbo.q PRE-CREATION 
>   ql/src/test/results/clientpositive/cbo_rp_groupby3_noskew_multi_distinct.q.out bece89f0d53eb23ddc40b035f535bfe92ca87a77 
>   ql/src/test/results/clientpositive/count_dist_rewrite.q.out d6ff5b75cfc562fc2befa9e2d81ab0edc44713c2 
>   ql/src/test/results/clientpositive/decimal_precision.q.out 3f28106685c433607748623a9a27ef350d050327 
>   ql/src/test/results/clientpositive/decimal_udf.q.out e451a186fc4a2355b8d2332de360b261bdaa4ce8 
>   ql/src/test/results/clientpositive/fetch_aggregation.q.out f20320fd9b45514cb30e653887128e7e1aa59253 
>   ql/src/test/results/clientpositive/groupby3.q.out 7c97174830221778a4cf9876a604655bd7d8a1e0 
>   ql/src/test/results/clientpositive/groupby3_map.q.out edad22b93f3fcbb9b164a93c0a2c7055e21cec2c 
>   ql/src/test/results/clientpositive/groupby3_map_multi_distinct.q.out 20344640e66a808e04f14a27b69ab49082ca9996 
>   ql/src/test/results/clientpositive/groupby3_map_skew.q.out e53e62c2ce773294763b57d5eaf811dd0a94682e 
>   ql/src/test/results/clientpositive/groupby3_noskew.q.out 1aa4cb6ce67d061cdbd92e5589460608e222d07f 
>   ql/src/test/results/clientpositive/groupby3_noskew_multi_distinct.q.out bb964e66d60a39912c7b4933a0d9237e8b528966 
>   ql/src/test/results/clientpositive/groupby_grouping_sets3.q.out e894205a27ee042bce61dfbb7f7cd75293bcca61 
>   ql/src/test/results/clientpositive/having2.q.out 12fae67586334750ce671ee90cad9bd5b33fc781 
>   ql/src/test/results/clientpositive/limit_pushdown2.q.out 5aeb5213e54d0d21f9a9024262db5acd3703d1c2 
>   ql/src/test/results/clientpositive/llap/count_dist_rewrite.q.out 347ae3780d18a32e373695153877e9798be965c5 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 98743eb9dbe87d7c751d9aacc61b6866c135e7af 
>   ql/src/test/results/clientpositive/llap/groupby3.q.out d050c4ec697f35e80fa5b4607a9714b5da336814 
>   ql/src/test/results/clientpositive/llap/limit_pushdown.q.out fe6b4f96e0aa2b05a7172d6323339f732168feef 
>   ql/src/test/results/clientpositive/llap/limit_pushdown3.q.out 97686cb5d1ec11131bcd88bc97593d8060f8e4b0 
>   ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out cce6bc3c0a7f00dd3c26432c6fbb78b79132937b 
>   ql/src/test/results/clientpositive/llap/parquet_types_vectorization.q.out 1ccdff8aa236aebad202f43357690e1602bcda25 
>   ql/src/test/results/clientpositive/llap/subquery_in.q.out 277036a8e51defc8679db59ccab2d6849c7d02d6 
>   ql/src/test/results/clientpositive/llap/subquery_in_having.q.out 390caf0a01928423536790a7baed10ff02c08c7d 
>   ql/src/test/results/clientpositive/llap/subquery_multi.q.out 438e44470a37dc577493545be5e420be6585add8 
>   ql/src/test/results/clientpositive/llap/subquery_notin.q.out 851a783fd6d0072b4b9826c37d5998579d7a36fc 
>   ql/src/test/results/clientpositive/llap/subquery_scalar.q.out 1483651f624c951cdd1634d852d7c48638f05233 
>   ql/src/test/results/clientpositive/llap/subquery_select.q.out abbfffd9bea9020d538975477aaf6d61da20cc85 
>   ql/src/test/results/clientpositive/llap/vector_aggregate_9.q.out 5d4bfe7fa4412904a604a3d309779e85b67e9864 
>   ql/src/test/results/clientpositive/llap/vector_cast_constant.q.out 4cb6213b891cc156118cb37a8d182813dc3b0491 
>   ql/src/test/results/clientpositive/llap/vector_decimal_aggregate.q.out 4bb8a0105912c7e83ba64586d6d4cd7965528d40 
>   ql/src/test/results/clientpositive/llap/vector_decimal_precision.q.out 18b903b3c3fff1ff3fc5fee5f1f2a2fde34457f9 
>   ql/src/test/results/clientpositive/llap/vector_decimal_udf.q.out 59b3c4a0177de56d771d8c6e4d00492257f746e6 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3.q.out 80ecd59a160b71a235aa1239c93b396d599f229e 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3_dec.q.out dabc987e6b1e4c199c927e039def7bb1eeb49449 
>   ql/src/test/results/clientpositive/llap/vector_groupby_reduce.q.out c21a4fc091cccb5255e5defbbdc4f3ea5dab9ddb 
>   ql/src/test/results/clientpositive/llap/vector_ptf_1.q.out 8d9ffb84108e840f5ff7d8b810bd5703691fc230 
>   ql/src/test/results/clientpositive/llap/vector_reuse_scratchcols.q.out 9eaf293e653eaf476b449f3a99122ac02fb7d1bd 
>   ql/src/test/results/clientpositive/llap/vector_windowing.q.out a82126515ccf1361d407efd857b087bcc83acc8f 
>   ql/src/test/results/clientpositive/llap/vectorization_0.q.out 1a846ab5958c357664b09b5dd173b80c72e2da6f 
>   ql/src/test/results/clientpositive/llap/vectorization_1.q.out dbee077cc90b7bab53bc41b88db79b072d73a1e0 
>   ql/src/test/results/clientpositive/llap/vectorization_12.q.out c9faf5596d55077e31bf3ee269c2a4dc1302dbbf 
>   ql/src/test/results/clientpositive/llap/vectorization_13.q.out 82982e68f1e6d67d9bc34168d146c3d49f90b8bf 
>   ql/src/test/results/clientpositive/llap/vectorization_14.q.out eaf51570ec0ec6c361ca5f10a6e0db8b2b9e3660 
>   ql/src/test/results/clientpositive/llap/vectorization_15.q.out 088721296a17b9c8e72b0b38066193e96382e6f9 
>   ql/src/test/results/clientpositive/llap/vectorization_16.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_2.q.out 96badf9b059ce05f828506e1ff6afaab2711fcb2 
>   ql/src/test/results/clientpositive/llap/vectorization_3.q.out b472c2d7969b96d488937796ad384f01b5e9fc7c 
>   ql/src/test/results/clientpositive/llap/vectorization_4.q.out 122f3fbb3fa041da2b74120b3adff517cc9439ea 
>   ql/src/test/results/clientpositive/llap/vectorization_9.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_input_format_excludes.q.out ad6bae763af3de1431b8ba758689123c28bd65f0 
>   ql/src/test/results/clientpositive/llap/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/llap/vectorization_pushdown.q.out ca2aa87176752b2233a93d236269841bee55fe13 
>   ql/src/test/results/clientpositive/llap/vectorization_short_regress.q.out 1023143f977cb537b88615ed4cc0aed3239e354f 
>   ql/src/test/results/clientpositive/llap/vectorized_mapjoin.q.out 0dff57afa65bf17a212994aa3361759c1d088517 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet.q.out e26f92b6f8e2853c23f8acb328b53fba12e1eb19 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet_types.q.out 92c6a734d8af2af193bf19da6dee36abc2abde28 
>   ql/src/test/results/clientpositive/llap/vectorized_shufflejoin.q.out 72216d3383b44e8fff8ac0e005dc1e6ba183df5a 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp.q.out 3fb968fd4b4dfdedce711836ef320e246b181c1f 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp_funcs.q.out c88ba5d67d7ccdb28e3bf52d16ab36ecd86fee2e 
>   ql/src/test/results/clientpositive/parquet_types_non_dictionary_encoding_vectorization.q.out 9f7339515a81e1d2b90275d5919c2623981d21be 
>   ql/src/test/results/clientpositive/parquet_types_vectorization.q.out 54b174205553239cc8c5a0c3dbc1b2b3d96ad9da 
>   ql/src/test/results/clientpositive/parquet_vectorization_0.q.out 4b3502fd22941af9484e85e2983eddc404052e2d 
>   ql/src/test/results/clientpositive/parquet_vectorization_1.q.out 42cbf3542d3a7b3af9923f638ee6451fa7f8e981 
>   ql/src/test/results/clientpositive/parquet_vectorization_12.q.out da3d4ad5120b3fe449ae20b6f9a374e81b9f2606 
>   ql/src/test/results/clientpositive/parquet_vectorization_13.q.out bd6f5819a123089e5481f81a68676096dea24f84 
>   ql/src/test/results/clientpositive/parquet_vectorization_14.q.out 91162ace81aaf961fa4b3bac4e8fda019bd656f0 
>   ql/src/test/results/clientpositive/parquet_vectorization_15.q.out 2c2ac85606cf94969c131ce04b10cc48d3862df8 
>   ql/src/test/results/clientpositive/parquet_vectorization_16.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_2.q.out 6f35ea0505c36e7a1ece7f31be0d8ed4aff77948 
>   ql/src/test/results/clientpositive/parquet_vectorization_3.q.out 5df9c540e7c63b006ec9528ca4f9f22db4dc3c60 
>   ql/src/test/results/clientpositive/parquet_vectorization_4.q.out c2956183890461bbc420685c5fa37b3676cd33b3 
>   ql/src/test/results/clientpositive/parquet_vectorization_9.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_limit.q.out b07cbba5b02d462c55975fe4e37ad339581a681b 
>   ql/src/test/results/clientpositive/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/parquet_vectorization_pushdown.q.out 79024e3d08e7762621a62e01d8f42402ca18d018 
>   ql/src/test/results/clientpositive/perf/spark/query1.q.out 58a833ba52a60c92167a38e11c94093022a9fe52 
>   ql/src/test/results/clientpositive/perf/spark/query13.q.out f4996dd0dd72bff58d029928cfc2585d2800e94c 
>   ql/src/test/results/clientpositive/perf/spark/query17.q.out 7b12a39114bb7ff92be717a338d46d19217dd003 
>   ql/src/test/results/clientpositive/perf/spark/query18.q.out 0da17daddac779e5f2e7dc0cba38679bab7b5464 
>   ql/src/test/results/clientpositive/perf/spark/query22.q.out 0353312009267045ab4afa133ac951a10ee56d5e 
>   ql/src/test/results/clientpositive/perf/spark/query24.q.out 54c607a890927ca0ac1885663d93dfc1aea50bc9 
>   ql/src/test/results/clientpositive/perf/spark/query26.q.out b0f64e1e8fc803bc104f45fec74ad8a94c9599d4 
>   ql/src/test/results/clientpositive/perf/spark/query27.q.out 052f25ea6899f9ab196f04dfc448220814551c5e 
>   ql/src/test/results/clientpositive/perf/spark/query28.q.out fb7e19856b137db9e18efcb258dcf4d4b827e02f 
>   ql/src/test/results/clientpositive/perf/spark/query30.q.out 7a0c78dbdc0da26976d67cc421befccd969bd143 
>   ql/src/test/results/clientpositive/perf/spark/query32.q.out 6f614e611fb1cc26f7178f477892f97258de0326 
>   ql/src/test/results/clientpositive/perf/spark/query35.q.out 703131566a718d1a5954f03a297ef818403227b2 
>   ql/src/test/results/clientpositive/perf/spark/query39.q.out 51fcc84e25bf76665646c5a6e0c2fff9854a698b 
>   ql/src/test/results/clientpositive/perf/spark/query44.q.out 4c90d24f3834b1d9e2866b52faa5a9084f53904f 
>   ql/src/test/results/clientpositive/perf/spark/query6.q.out 3e464f13280bd6f3880b0925f794c506eedbeda0 
>   ql/src/test/results/clientpositive/perf/spark/query65.q.out 860a9bacc44129c6aa5a511c28417e9bec8ebd38 
>   ql/src/test/results/clientpositive/perf/spark/query7.q.out b0979c0d46c92b6e2fa928b8924864f9d6dccec2 
>   ql/src/test/results/clientpositive/perf/spark/query81.q.out be6a5fa3f8e3ca1ad881d511522653f15b9ecd93 
>   ql/src/test/results/clientpositive/perf/spark/query85.q.out b4a4990a527828692aac73d0827c75f7e054bb36 
>   ql/src/test/results/clientpositive/perf/spark/query9.q.out 49c6b7f5f84f4a644799d7a90004ab6b7564baac 
>   ql/src/test/results/clientpositive/perf/spark/query92.q.out 1b73ab58782cda60593d7914d4b89092a9018f62 
>   ql/src/test/results/clientpositive/perf/tez/query1.q.out ad350c12414185effce3c9520c3d8fb2b6a455ed 
>   ql/src/test/results/clientpositive/perf/tez/query13.q.out 7cb54498d414845265a986587e4217f461c11fc9 
>   ql/src/test/results/clientpositive/perf/tez/query14.q.out 1cffcb010dd4b35143abd63667a11293dcbac0ee 
>   ql/src/test/results/clientpositive/perf/tez/query17.q.out 7c195c2f1d9408e21a7c2a8a24d1825495371897 
>   ql/src/test/results/clientpositive/perf/tez/query18.q.out adb9682fc2eb315dd970e26e1a7e0bc5291a92ed 
>   ql/src/test/results/clientpositive/perf/tez/query22.q.out efc87ede40206fa302ee03729768d5589c5433e7 
>   ql/src/test/results/clientpositive/perf/tez/query24.q.out 5cbbea335f722a183281fac193e0dadbff605ed9 
>   ql/src/test/results/clientpositive/perf/tez/query26.q.out 8990298822a12712a521d1a7c49000d72f343b63 
>   ql/src/test/results/clientpositive/perf/tez/query27.q.out adb1bb7f1e03432b0b71535c53a137cdd8306834 
>   ql/src/test/results/clientpositive/perf/tez/query28.q.out 33dc1ae513d95524e103bfd58066be83b4183757 
>   ql/src/test/results/clientpositive/perf/tez/query30.q.out 93ce9cd7eb26b25610da6cc177094d285e419f9f 
>   ql/src/test/results/clientpositive/perf/tez/query32.q.out adb4377fb67a4c16bb256e99b7e5f070c11c6c3c 
>   ql/src/test/results/clientpositive/perf/tez/query35.q.out decbadbdcda359ba896a60e47d32bfb63ead1839 
>   ql/src/test/results/clientpositive/perf/tez/query39.q.out fdcd65135128fb6ca5b7c29f344c33475942ee50 
>   ql/src/test/results/clientpositive/perf/tez/query44.q.out b982de041f8be8b2dd0d66e3e554f8931140490b 
>   ql/src/test/results/clientpositive/perf/tez/query6.q.out 1cd69f755a1273fa8d60b2f08f8c3b190f818cac 
>   ql/src/test/results/clientpositive/perf/tez/query65.q.out 0091ad022e595f9504dc8510145d5a365d9bde6e 
>   ql/src/test/results/clientpositive/perf/tez/query7.q.out 00628dbce9ba575544ba9becf7a3c7fddcbe1b1b 
>   ql/src/test/results/clientpositive/perf/tez/query81.q.out 5fb04b29f70a1db0a849b79ef2fa0b1785c25809 
>   ql/src/test/results/clientpositive/perf/tez/query85.q.out abba10da7af9c9190b865463e6d02e456e2e10b0 
>   ql/src/test/results/clientpositive/perf/tez/query9.q.out 24de6f2e3a00ecb9c58778c542837d33a5b2d8f7 
>   ql/src/test/results/clientpositive/perf/tez/query92.q.out 6009fdf17191d97edfae9fd23c12fad4ab499fbd 
>   ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out cf78358e272297d9e3e953401812ca20609de370 
>   ql/src/test/results/clientpositive/spark/groupby3.q.out c314763db20fd8604371c5a7e0e3fc3937eabfe3 
>   ql/src/test/results/clientpositive/spark/groupby3_map.q.out 9caf47b676dfc9996d5bdb6a2b1fc28ba7a7e4b8 
>   ql/src/test/results/clientpositive/spark/groupby3_map_multi_distinct.q.out 678276115f96c2d17b1f1b17936d5eaee56a8b72 
>   ql/src/test/results/clientpositive/spark/groupby3_map_skew.q.out 2f101601fe4657eb9dcc9e7827051a73010de17d 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew.q.out d07eea5fe6f5f63a17599b8ac4ddc41e44d55ee0 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew_multi_distinct.q.out 8bcb91299107bceca2eb37f63e112812d35efb4a 
>   ql/src/test/results/clientpositive/spark/limit_pushdown.q.out 82ba94a52b61b347424b9913b6489e04f76188e8 
>   ql/src/test/results/clientpositive/spark/limit_pushdown2.q.out 62c26e6224603f54aa7da9e89da845695b83b59f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_0.q.out f0318a3c6cb8de176b9fe988dbf890da58bcf28f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_1.q.out 18379f257bc5cd886318a7db5a641b8994043807 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_12.q.out df85ce3c666a7423ad866d8eb7c3b24a4570ca14 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_13.q.out e4db32c9f327570f25a2e1033bf8364f7170b8ff 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_14.q.out aef374a00744842666ede91664382f62760107ab 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_15.q.out 24cdf069f69583c41b5424f122ae4805130b20fb 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_16.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_2.q.out 8b3c5f2a2de82a89bd84d131b527832467f0a8b1 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_3.q.out dd3532b4ffb116ccdfa4d031af6d0bae62f7a20e 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_4.q.out 4a7b0e08f8223f705180b51391d9026bc343540a 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_9.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_limit.q.out ce188a058a2a494bf655277e32f9742112a00a96 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_pushdown.q.out a95898f8efe7a7e838acb5fda2b041a685fdf2c2 
>   ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 1e5d4569cf6f724f2db9157237cf5af3a2524090 
>   ql/src/test/results/clientpositive/spark/subquery_in.q.out 7df930039a3946e27d293b9e470afb3946cce9ad 
>   ql/src/test/results/clientpositive/spark/subquery_multi.q.out 32e0983bf4a9a43d51d92e4331c09f9a77f5e0c7 
>   ql/src/test/results/clientpositive/spark/subquery_notin.q.out 82a1304a93bac41f8a2cbeb42a11de1c753df81a 
>   ql/src/test/results/clientpositive/spark/subquery_select.q.out 6d839facd63fef843acb3c97950fb030c78e2ea0 
>   ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out 0a67096ee2b28cf20f6551b3ff864cb8a9a863f7 
>   ql/src/test/results/clientpositive/spark/vector_cast_constant.q.out d81781e8813ca3d6035a998f53694a83462c378d 
>   ql/src/test/results/clientpositive/spark/vector_decimal_aggregate.q.out 98c709c872cd19395a21025c03c7be7dac655129 
>   ql/src/test/results/clientpositive/spark/vectorization_0.q.out ec7387640232658993e2c2b2562c297680e5c583 
>   ql/src/test/results/clientpositive/spark/vectorization_1.q.out a5d4a14de91e48c7d65ce171ccb9a493f983eb07 
>   ql/src/test/results/clientpositive/spark/vectorization_12.q.out 55e3ad6981f3388090998163acffc6717426a459 
>   ql/src/test/results/clientpositive/spark/vectorization_13.q.out de501e7d10de8beac16c34c416e2ab34c9e65397 
>   ql/src/test/results/clientpositive/spark/vectorization_14.q.out b583ceeead6f6c673dbadd556c25794d42874104 
>   ql/src/test/results/clientpositive/spark/vectorization_15.q.out 70aacfcb9ed928d9e0e1509734f58a01695b105f 
>   ql/src/test/results/clientpositive/spark/vectorization_16.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_2.q.out f1ee93662faeb4758976f293b91d16e617e3f252 
>   ql/src/test/results/clientpositive/spark/vectorization_3.q.out c78de728c5471d759a363608bd89d98c05882cbd 
>   ql/src/test/results/clientpositive/spark/vectorization_4.q.out c9246510aa698fd98aed0c24cafd28dbdef90e9c 
>   ql/src/test/results/clientpositive/spark/vectorization_9.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_input_format_excludes.q.out 01eb4b46a9d443ebcd0b514c0223a8d6e6df46cb 
>   ql/src/test/results/clientpositive/spark/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/spark/vectorization_pushdown.q.out 6d525518cb60f7f792954fcfadd1c0b6ec5e703a 
>   ql/src/test/results/clientpositive/spark/vectorization_short_regress.q.out c04f2002695ea5f50378552c377e9a79ef2456e9 
>   ql/src/test/results/clientpositive/spark/vectorized_mapjoin.q.out 93ab21e6d951602b962a3464fcbe825152d93c00 
>   ql/src/test/results/clientpositive/spark/vectorized_shufflejoin.q.out fa67ae7eddbe24520b947cb107d44018b87d6a50 
>   ql/src/test/results/clientpositive/spark/vectorized_timestamp_funcs.q.out 2fccd289a4fef744b0029d72dca2e0286cffe768 
>   ql/src/test/results/clientpositive/tez/vectorization_limit.q.out b8a1f9057c4c8425f1cf22e6d57cdb4fd9abe5dc 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out af058a44e4b54137d3186e943e3eb8424bbd22b4 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions_no_cbo.q.out PRE-CREATION 
>   ql/src/test/results/clientpositive/udaf_number_format.q.out 14ab23dc0e077486554882f49c1489274211523f 
>   ql/src/test/results/clientpositive/udf3.q.out 9f9f56fe02d0eae1f683558701c65fa244fe48cf 
>   ql/src/test/results/clientpositive/udf8.q.out d75cd782175b857314b5ef19d90d00519630220b 
>   ql/src/test/results/clientpositive/union_remove_6_subq.q.out 096d98db3ad579675c9c4763ffbf37333ee70f6d 
>   ql/src/test/results/clientpositive/vector_aggregate_9.q.out 6cf99bb0b8a39772a249272cd8c6d186a7232fb6 
>   ql/src/test/results/clientpositive/vector_cast_constant.q.out 4b06016702113157bdc3b566a1226df9b6ab8a3d 
>   ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out c17951a738647c43cd54cd7b9c8e8cdcaa7de685 
>   ql/src/test/results/clientpositive/vector_decimal_precision.q.out 6e41f536de776eb271c4b9c00fc9bfa32470c33b 
>   ql/src/test/results/clientpositive/vector_groupby_reduce.q.out 5ac1ea898570378c58b281eb1d6c410adbbf0126 
>   ql/src/test/results/clientpositive/vectorization_1.q.out 97334a3fb2240197ec5b3fe236bb4003f902bea8 
>   ql/src/test/results/clientpositive/vectorization_12.q.out ba0882f447add5985c8b8389329b5c7d8c4731d7 
>   ql/src/test/results/clientpositive/vectorization_13.q.out e41a0d7e529a7eef3fc7fb9457690a35a2ad17b3 
>   ql/src/test/results/clientpositive/vectorization_14.q.out 02a986c111755b3664597330d167fa0a6165e387 
>   ql/src/test/results/clientpositive/vectorization_15.q.out a8d681b06e45da5930853787479ede07ce5f852d 
>   ql/src/test/results/clientpositive/vectorization_16.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_2.q.out 1df05af721b554fa17bde03859793f9ae80fb70c 
>   ql/src/test/results/clientpositive/vectorization_3.q.out 0cee2546f60190912ce95d7c866e2f3b970df027 
>   ql/src/test/results/clientpositive/vectorization_4.q.out 014750bd28a6119db957d3d188af41e209c8e862 
>   ql/src/test/results/clientpositive/vectorization_9.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_limit.q.out a4ff11daa72c4a0f8419c9cf2c3cb59a925e860e 
>   ql/src/test/results/clientpositive/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/vectorization_pushdown.q.out a13a0a08ceae35883da919ba1d0320795a64d726 
>   ql/src/test/results/clientpositive/vectorized_distinct_gby.q.out dc7add7a61a97dd9e16699c33f36dc3f4e9d918c 
>   ql/src/test/results/clientpositive/vectorized_mapjoin.q.out a6fee455ae73aaece5150f473e2b6701b53cca66 
>   ql/src/test/results/clientpositive/vectorized_parquet_types.q.out 0dc582f77fa716b8919c4626b5d821025b654fe5 
>   ql/src/test/results/clientpositive/vectorized_shufflejoin.q.out 6edb69aaad6b90164632e7ca7d9e58e77e920638 
>   ql/src/test/results/clientpositive/vectorized_timestamp.q.out fb0672c00283958087b7c82768f5ad122596386b 
>   ql/src/test/results/clientpositive/vectorized_timestamp_funcs.q.out 2ccff7b9197adab0d9283197ad701d0866d4ed81 
>   ql/src/test/results/clientpositive/view_cbo.q.out c740596e70a2300e2828a898c1e954c0242fda9c 
> 
> 
> Diff: https://reviews.apache.org/r/66179/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Jesús Camacho Rodríguez
> 
>


Re: Review Request 66179: HIVE-18979

Posted by Ashutosh Chauhan <ha...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/66179/#review199579
-----------------------------------------------------------




ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java
Lines 177 (patched)
<https://reviews.apache.org/r/66179/#comment280143>

    I wonder if project and aggregate transform can be generate together such that instead of generating x*x in RexNode of aggregate. Aggregate only generates x and then project computes x*x Doing that may avoid project x*x in addition to x before Gby. That will save both cpu and network.
    Could be a follow-up.



ql/src/test/queries/clientpositive/groupby3.q
Lines 1 (patched)
<https://reviews.apache.org/r/66179/#comment279911>

    Whats the reason for this?



ql/src/test/queries/clientpositive/groupby3_map_skew.q
Lines 1 (patched)
<https://reviews.apache.org/r/66179/#comment279912>

    Whats the reason for this?



ql/src/test/results/clientpositive/decimal_udf.q.out
Line 1852 (original), 1852 (patched)
<https://reviews.apache.org/r/66179/#comment280149>

    It will be good to avoid project key * key in addition to key, before Gby. Left a comment in Rule as well.



ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out
Line 396 (original), 396 (patched)
<https://reviews.apache.org/r/66179/#comment279932>

    Some functions didn't get decomposed?



ql/src/test/results/clientpositive/udaf_number_format.q.out
Line 75 (original), 79 (patched)
<https://reviews.apache.org/r/66179/#comment279934>

    avg('a') is ill-formed query. Ideally, Hive should throw exception for this. (Sql server and pg throws). But Mysql gives 0.0 so i guess we are making progress to being more in line with non-compliant db :)


- Ashutosh Chauhan


On March 20, 2018, 7:51 p.m., Jesús Camacho Rodríguez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/66179/
> -----------------------------------------------------------
> 
> (Updated March 20, 2018, 7:51 p.m.)
> 
> 
> Review request for hive and Ashutosh Chauhan.
> 
> 
> Bugs: HIVE-18979
>     https://issues.apache.org/jira/browse/HIVE-18979
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HIVE-18979
> 
> 
> Diffs
> -----
> 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/functions/HiveSqlVarianceAggFunction.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveAggregateReduceFunctionsRule.java PRE-CREATION 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/SqlFunctionConverter.java cb0c2b1b357c8b93c19e84e46e2793b895eff60c 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java 3520d90fa8d40b2358900b58f4b45995d9c3e6fa 
>   ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFSumEmptyIsZero.java 01c933c4a140f0b94614fd6e4a052cc1fb7a493f 
>   ql/src/test/queries/clientpositive/groupby3.q d709d9b5ad38f3f2d6e3422d14c2bb793290c701 
>   ql/src/test/queries/clientpositive/groupby3_map_skew.q f9cb46ee32a8e5639375dbb6783ffacba44b59f6 
>   ql/src/test/queries/clientpositive/udaf_binarysetfunctions_no_cbo.q PRE-CREATION 
>   ql/src/test/results/clientpositive/cbo_rp_groupby3_noskew_multi_distinct.q.out bece89f0d53eb23ddc40b035f535bfe92ca87a77 
>   ql/src/test/results/clientpositive/count_dist_rewrite.q.out d6ff5b75cfc562fc2befa9e2d81ab0edc44713c2 
>   ql/src/test/results/clientpositive/decimal_precision.q.out 3f28106685c433607748623a9a27ef350d050327 
>   ql/src/test/results/clientpositive/decimal_udf.q.out e451a186fc4a2355b8d2332de360b261bdaa4ce8 
>   ql/src/test/results/clientpositive/fetch_aggregation.q.out f20320fd9b45514cb30e653887128e7e1aa59253 
>   ql/src/test/results/clientpositive/groupby3.q.out 7c97174830221778a4cf9876a604655bd7d8a1e0 
>   ql/src/test/results/clientpositive/groupby3_map.q.out edad22b93f3fcbb9b164a93c0a2c7055e21cec2c 
>   ql/src/test/results/clientpositive/groupby3_map_multi_distinct.q.out 20344640e66a808e04f14a27b69ab49082ca9996 
>   ql/src/test/results/clientpositive/groupby3_map_skew.q.out e53e62c2ce773294763b57d5eaf811dd0a94682e 
>   ql/src/test/results/clientpositive/groupby3_noskew.q.out 1aa4cb6ce67d061cdbd92e5589460608e222d07f 
>   ql/src/test/results/clientpositive/groupby3_noskew_multi_distinct.q.out bb964e66d60a39912c7b4933a0d9237e8b528966 
>   ql/src/test/results/clientpositive/groupby_grouping_sets3.q.out e894205a27ee042bce61dfbb7f7cd75293bcca61 
>   ql/src/test/results/clientpositive/having2.q.out 12fae67586334750ce671ee90cad9bd5b33fc781 
>   ql/src/test/results/clientpositive/limit_pushdown2.q.out 5aeb5213e54d0d21f9a9024262db5acd3703d1c2 
>   ql/src/test/results/clientpositive/llap/count_dist_rewrite.q.out 347ae3780d18a32e373695153877e9798be965c5 
>   ql/src/test/results/clientpositive/llap/explainuser_1.q.out 98743eb9dbe87d7c751d9aacc61b6866c135e7af 
>   ql/src/test/results/clientpositive/llap/groupby3.q.out d050c4ec697f35e80fa5b4607a9714b5da336814 
>   ql/src/test/results/clientpositive/llap/limit_pushdown.q.out fe6b4f96e0aa2b05a7172d6323339f732168feef 
>   ql/src/test/results/clientpositive/llap/limit_pushdown3.q.out 97686cb5d1ec11131bcd88bc97593d8060f8e4b0 
>   ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out cce6bc3c0a7f00dd3c26432c6fbb78b79132937b 
>   ql/src/test/results/clientpositive/llap/parquet_types_vectorization.q.out 1ccdff8aa236aebad202f43357690e1602bcda25 
>   ql/src/test/results/clientpositive/llap/subquery_in.q.out 277036a8e51defc8679db59ccab2d6849c7d02d6 
>   ql/src/test/results/clientpositive/llap/subquery_in_having.q.out 390caf0a01928423536790a7baed10ff02c08c7d 
>   ql/src/test/results/clientpositive/llap/subquery_multi.q.out 438e44470a37dc577493545be5e420be6585add8 
>   ql/src/test/results/clientpositive/llap/subquery_notin.q.out 851a783fd6d0072b4b9826c37d5998579d7a36fc 
>   ql/src/test/results/clientpositive/llap/subquery_scalar.q.out 1483651f624c951cdd1634d852d7c48638f05233 
>   ql/src/test/results/clientpositive/llap/subquery_select.q.out abbfffd9bea9020d538975477aaf6d61da20cc85 
>   ql/src/test/results/clientpositive/llap/vector_aggregate_9.q.out 5d4bfe7fa4412904a604a3d309779e85b67e9864 
>   ql/src/test/results/clientpositive/llap/vector_cast_constant.q.out 4cb6213b891cc156118cb37a8d182813dc3b0491 
>   ql/src/test/results/clientpositive/llap/vector_decimal_aggregate.q.out 4bb8a0105912c7e83ba64586d6d4cd7965528d40 
>   ql/src/test/results/clientpositive/llap/vector_decimal_precision.q.out 18b903b3c3fff1ff3fc5fee5f1f2a2fde34457f9 
>   ql/src/test/results/clientpositive/llap/vector_decimal_udf.q.out 59b3c4a0177de56d771d8c6e4d00492257f746e6 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3.q.out 80ecd59a160b71a235aa1239c93b396d599f229e 
>   ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets3_dec.q.out dabc987e6b1e4c199c927e039def7bb1eeb49449 
>   ql/src/test/results/clientpositive/llap/vector_groupby_reduce.q.out c21a4fc091cccb5255e5defbbdc4f3ea5dab9ddb 
>   ql/src/test/results/clientpositive/llap/vector_ptf_1.q.out 8d9ffb84108e840f5ff7d8b810bd5703691fc230 
>   ql/src/test/results/clientpositive/llap/vector_reuse_scratchcols.q.out 9eaf293e653eaf476b449f3a99122ac02fb7d1bd 
>   ql/src/test/results/clientpositive/llap/vector_windowing.q.out a82126515ccf1361d407efd857b087bcc83acc8f 
>   ql/src/test/results/clientpositive/llap/vectorization_0.q.out 1a846ab5958c357664b09b5dd173b80c72e2da6f 
>   ql/src/test/results/clientpositive/llap/vectorization_1.q.out dbee077cc90b7bab53bc41b88db79b072d73a1e0 
>   ql/src/test/results/clientpositive/llap/vectorization_12.q.out c9faf5596d55077e31bf3ee269c2a4dc1302dbbf 
>   ql/src/test/results/clientpositive/llap/vectorization_13.q.out 82982e68f1e6d67d9bc34168d146c3d49f90b8bf 
>   ql/src/test/results/clientpositive/llap/vectorization_14.q.out eaf51570ec0ec6c361ca5f10a6e0db8b2b9e3660 
>   ql/src/test/results/clientpositive/llap/vectorization_15.q.out 088721296a17b9c8e72b0b38066193e96382e6f9 
>   ql/src/test/results/clientpositive/llap/vectorization_16.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_2.q.out 96badf9b059ce05f828506e1ff6afaab2711fcb2 
>   ql/src/test/results/clientpositive/llap/vectorization_3.q.out b472c2d7969b96d488937796ad384f01b5e9fc7c 
>   ql/src/test/results/clientpositive/llap/vectorization_4.q.out 122f3fbb3fa041da2b74120b3adff517cc9439ea 
>   ql/src/test/results/clientpositive/llap/vectorization_9.q.out dd2e5f0e3397d0b2b2964a834545154e1887a729 
>   ql/src/test/results/clientpositive/llap/vectorization_input_format_excludes.q.out ad6bae763af3de1431b8ba758689123c28bd65f0 
>   ql/src/test/results/clientpositive/llap/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/llap/vectorization_pushdown.q.out ca2aa87176752b2233a93d236269841bee55fe13 
>   ql/src/test/results/clientpositive/llap/vectorization_short_regress.q.out 1023143f977cb537b88615ed4cc0aed3239e354f 
>   ql/src/test/results/clientpositive/llap/vectorized_mapjoin.q.out 0dff57afa65bf17a212994aa3361759c1d088517 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet.q.out e26f92b6f8e2853c23f8acb328b53fba12e1eb19 
>   ql/src/test/results/clientpositive/llap/vectorized_parquet_types.q.out 92c6a734d8af2af193bf19da6dee36abc2abde28 
>   ql/src/test/results/clientpositive/llap/vectorized_shufflejoin.q.out 72216d3383b44e8fff8ac0e005dc1e6ba183df5a 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp.q.out 3fb968fd4b4dfdedce711836ef320e246b181c1f 
>   ql/src/test/results/clientpositive/llap/vectorized_timestamp_funcs.q.out c88ba5d67d7ccdb28e3bf52d16ab36ecd86fee2e 
>   ql/src/test/results/clientpositive/parquet_types_non_dictionary_encoding_vectorization.q.out 9f7339515a81e1d2b90275d5919c2623981d21be 
>   ql/src/test/results/clientpositive/parquet_types_vectorization.q.out 54b174205553239cc8c5a0c3dbc1b2b3d96ad9da 
>   ql/src/test/results/clientpositive/parquet_vectorization_0.q.out 4b3502fd22941af9484e85e2983eddc404052e2d 
>   ql/src/test/results/clientpositive/parquet_vectorization_1.q.out 42cbf3542d3a7b3af9923f638ee6451fa7f8e981 
>   ql/src/test/results/clientpositive/parquet_vectorization_12.q.out da3d4ad5120b3fe449ae20b6f9a374e81b9f2606 
>   ql/src/test/results/clientpositive/parquet_vectorization_13.q.out bd6f5819a123089e5481f81a68676096dea24f84 
>   ql/src/test/results/clientpositive/parquet_vectorization_14.q.out 91162ace81aaf961fa4b3bac4e8fda019bd656f0 
>   ql/src/test/results/clientpositive/parquet_vectorization_15.q.out 2c2ac85606cf94969c131ce04b10cc48d3862df8 
>   ql/src/test/results/clientpositive/parquet_vectorization_16.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_2.q.out 6f35ea0505c36e7a1ece7f31be0d8ed4aff77948 
>   ql/src/test/results/clientpositive/parquet_vectorization_3.q.out 5df9c540e7c63b006ec9528ca4f9f22db4dc3c60 
>   ql/src/test/results/clientpositive/parquet_vectorization_4.q.out c2956183890461bbc420685c5fa37b3676cd33b3 
>   ql/src/test/results/clientpositive/parquet_vectorization_9.q.out 398443b5f0e36f40cfd77ee17e57f61552ede9f8 
>   ql/src/test/results/clientpositive/parquet_vectorization_limit.q.out b07cbba5b02d462c55975fe4e37ad339581a681b 
>   ql/src/test/results/clientpositive/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/parquet_vectorization_pushdown.q.out 79024e3d08e7762621a62e01d8f42402ca18d018 
>   ql/src/test/results/clientpositive/perf/spark/query1.q.out 58a833ba52a60c92167a38e11c94093022a9fe52 
>   ql/src/test/results/clientpositive/perf/spark/query13.q.out f4996dd0dd72bff58d029928cfc2585d2800e94c 
>   ql/src/test/results/clientpositive/perf/spark/query17.q.out 7b12a39114bb7ff92be717a338d46d19217dd003 
>   ql/src/test/results/clientpositive/perf/spark/query18.q.out 0da17daddac779e5f2e7dc0cba38679bab7b5464 
>   ql/src/test/results/clientpositive/perf/spark/query22.q.out 0353312009267045ab4afa133ac951a10ee56d5e 
>   ql/src/test/results/clientpositive/perf/spark/query24.q.out 54c607a890927ca0ac1885663d93dfc1aea50bc9 
>   ql/src/test/results/clientpositive/perf/spark/query26.q.out b0f64e1e8fc803bc104f45fec74ad8a94c9599d4 
>   ql/src/test/results/clientpositive/perf/spark/query27.q.out 052f25ea6899f9ab196f04dfc448220814551c5e 
>   ql/src/test/results/clientpositive/perf/spark/query28.q.out fb7e19856b137db9e18efcb258dcf4d4b827e02f 
>   ql/src/test/results/clientpositive/perf/spark/query30.q.out 7a0c78dbdc0da26976d67cc421befccd969bd143 
>   ql/src/test/results/clientpositive/perf/spark/query32.q.out 6f614e611fb1cc26f7178f477892f97258de0326 
>   ql/src/test/results/clientpositive/perf/spark/query35.q.out 703131566a718d1a5954f03a297ef818403227b2 
>   ql/src/test/results/clientpositive/perf/spark/query39.q.out 51fcc84e25bf76665646c5a6e0c2fff9854a698b 
>   ql/src/test/results/clientpositive/perf/spark/query44.q.out 4c90d24f3834b1d9e2866b52faa5a9084f53904f 
>   ql/src/test/results/clientpositive/perf/spark/query6.q.out 3e464f13280bd6f3880b0925f794c506eedbeda0 
>   ql/src/test/results/clientpositive/perf/spark/query65.q.out 860a9bacc44129c6aa5a511c28417e9bec8ebd38 
>   ql/src/test/results/clientpositive/perf/spark/query7.q.out b0979c0d46c92b6e2fa928b8924864f9d6dccec2 
>   ql/src/test/results/clientpositive/perf/spark/query81.q.out be6a5fa3f8e3ca1ad881d511522653f15b9ecd93 
>   ql/src/test/results/clientpositive/perf/spark/query85.q.out b4a4990a527828692aac73d0827c75f7e054bb36 
>   ql/src/test/results/clientpositive/perf/spark/query9.q.out 49c6b7f5f84f4a644799d7a90004ab6b7564baac 
>   ql/src/test/results/clientpositive/perf/spark/query92.q.out 1b73ab58782cda60593d7914d4b89092a9018f62 
>   ql/src/test/results/clientpositive/perf/tez/query1.q.out ad350c12414185effce3c9520c3d8fb2b6a455ed 
>   ql/src/test/results/clientpositive/perf/tez/query13.q.out 7cb54498d414845265a986587e4217f461c11fc9 
>   ql/src/test/results/clientpositive/perf/tez/query14.q.out 1cffcb010dd4b35143abd63667a11293dcbac0ee 
>   ql/src/test/results/clientpositive/perf/tez/query17.q.out 7c195c2f1d9408e21a7c2a8a24d1825495371897 
>   ql/src/test/results/clientpositive/perf/tez/query18.q.out adb9682fc2eb315dd970e26e1a7e0bc5291a92ed 
>   ql/src/test/results/clientpositive/perf/tez/query22.q.out efc87ede40206fa302ee03729768d5589c5433e7 
>   ql/src/test/results/clientpositive/perf/tez/query24.q.out 5cbbea335f722a183281fac193e0dadbff605ed9 
>   ql/src/test/results/clientpositive/perf/tez/query26.q.out 8990298822a12712a521d1a7c49000d72f343b63 
>   ql/src/test/results/clientpositive/perf/tez/query27.q.out adb1bb7f1e03432b0b71535c53a137cdd8306834 
>   ql/src/test/results/clientpositive/perf/tez/query28.q.out 33dc1ae513d95524e103bfd58066be83b4183757 
>   ql/src/test/results/clientpositive/perf/tez/query30.q.out 93ce9cd7eb26b25610da6cc177094d285e419f9f 
>   ql/src/test/results/clientpositive/perf/tez/query32.q.out adb4377fb67a4c16bb256e99b7e5f070c11c6c3c 
>   ql/src/test/results/clientpositive/perf/tez/query35.q.out decbadbdcda359ba896a60e47d32bfb63ead1839 
>   ql/src/test/results/clientpositive/perf/tez/query39.q.out fdcd65135128fb6ca5b7c29f344c33475942ee50 
>   ql/src/test/results/clientpositive/perf/tez/query44.q.out b982de041f8be8b2dd0d66e3e554f8931140490b 
>   ql/src/test/results/clientpositive/perf/tez/query6.q.out 1cd69f755a1273fa8d60b2f08f8c3b190f818cac 
>   ql/src/test/results/clientpositive/perf/tez/query65.q.out 0091ad022e595f9504dc8510145d5a365d9bde6e 
>   ql/src/test/results/clientpositive/perf/tez/query7.q.out 00628dbce9ba575544ba9becf7a3c7fddcbe1b1b 
>   ql/src/test/results/clientpositive/perf/tez/query81.q.out 5fb04b29f70a1db0a849b79ef2fa0b1785c25809 
>   ql/src/test/results/clientpositive/perf/tez/query85.q.out abba10da7af9c9190b865463e6d02e456e2e10b0 
>   ql/src/test/results/clientpositive/perf/tez/query9.q.out 24de6f2e3a00ecb9c58778c542837d33a5b2d8f7 
>   ql/src/test/results/clientpositive/perf/tez/query92.q.out 6009fdf17191d97edfae9fd23c12fad4ab499fbd 
>   ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out cf78358e272297d9e3e953401812ca20609de370 
>   ql/src/test/results/clientpositive/spark/groupby3.q.out c314763db20fd8604371c5a7e0e3fc3937eabfe3 
>   ql/src/test/results/clientpositive/spark/groupby3_map.q.out 9caf47b676dfc9996d5bdb6a2b1fc28ba7a7e4b8 
>   ql/src/test/results/clientpositive/spark/groupby3_map_multi_distinct.q.out 678276115f96c2d17b1f1b17936d5eaee56a8b72 
>   ql/src/test/results/clientpositive/spark/groupby3_map_skew.q.out 2f101601fe4657eb9dcc9e7827051a73010de17d 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew.q.out d07eea5fe6f5f63a17599b8ac4ddc41e44d55ee0 
>   ql/src/test/results/clientpositive/spark/groupby3_noskew_multi_distinct.q.out 8bcb91299107bceca2eb37f63e112812d35efb4a 
>   ql/src/test/results/clientpositive/spark/limit_pushdown.q.out 82ba94a52b61b347424b9913b6489e04f76188e8 
>   ql/src/test/results/clientpositive/spark/limit_pushdown2.q.out 62c26e6224603f54aa7da9e89da845695b83b59f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_0.q.out f0318a3c6cb8de176b9fe988dbf890da58bcf28f 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_1.q.out 18379f257bc5cd886318a7db5a641b8994043807 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_12.q.out df85ce3c666a7423ad866d8eb7c3b24a4570ca14 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_13.q.out e4db32c9f327570f25a2e1033bf8364f7170b8ff 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_14.q.out aef374a00744842666ede91664382f62760107ab 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_15.q.out 24cdf069f69583c41b5424f122ae4805130b20fb 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_16.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_2.q.out 8b3c5f2a2de82a89bd84d131b527832467f0a8b1 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_3.q.out dd3532b4ffb116ccdfa4d031af6d0bae62f7a20e 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_4.q.out 4a7b0e08f8223f705180b51391d9026bc343540a 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_9.q.out a35c9c586fcc6ef50d1cdde0a6dd7c4e0890c634 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_limit.q.out ce188a058a2a494bf655277e32f9742112a00a96 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_not.q.out e581007c80373f24f47909260e04915aaf3d4d2c 
>   ql/src/test/results/clientpositive/spark/parquet_vectorization_pushdown.q.out a95898f8efe7a7e838acb5fda2b041a685fdf2c2 
>   ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 1e5d4569cf6f724f2db9157237cf5af3a2524090 
>   ql/src/test/results/clientpositive/spark/subquery_in.q.out 7df930039a3946e27d293b9e470afb3946cce9ad 
>   ql/src/test/results/clientpositive/spark/subquery_multi.q.out 32e0983bf4a9a43d51d92e4331c09f9a77f5e0c7 
>   ql/src/test/results/clientpositive/spark/subquery_notin.q.out 82a1304a93bac41f8a2cbeb42a11de1c753df81a 
>   ql/src/test/results/clientpositive/spark/subquery_select.q.out 6d839facd63fef843acb3c97950fb030c78e2ea0 
>   ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out 0a67096ee2b28cf20f6551b3ff864cb8a9a863f7 
>   ql/src/test/results/clientpositive/spark/vector_cast_constant.q.out d81781e8813ca3d6035a998f53694a83462c378d 
>   ql/src/test/results/clientpositive/spark/vector_decimal_aggregate.q.out 98c709c872cd19395a21025c03c7be7dac655129 
>   ql/src/test/results/clientpositive/spark/vectorization_0.q.out ec7387640232658993e2c2b2562c297680e5c583 
>   ql/src/test/results/clientpositive/spark/vectorization_1.q.out a5d4a14de91e48c7d65ce171ccb9a493f983eb07 
>   ql/src/test/results/clientpositive/spark/vectorization_12.q.out 55e3ad6981f3388090998163acffc6717426a459 
>   ql/src/test/results/clientpositive/spark/vectorization_13.q.out de501e7d10de8beac16c34c416e2ab34c9e65397 
>   ql/src/test/results/clientpositive/spark/vectorization_14.q.out b583ceeead6f6c673dbadd556c25794d42874104 
>   ql/src/test/results/clientpositive/spark/vectorization_15.q.out 70aacfcb9ed928d9e0e1509734f58a01695b105f 
>   ql/src/test/results/clientpositive/spark/vectorization_16.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_2.q.out f1ee93662faeb4758976f293b91d16e617e3f252 
>   ql/src/test/results/clientpositive/spark/vectorization_3.q.out c78de728c5471d759a363608bd89d98c05882cbd 
>   ql/src/test/results/clientpositive/spark/vectorization_4.q.out c9246510aa698fd98aed0c24cafd28dbdef90e9c 
>   ql/src/test/results/clientpositive/spark/vectorization_9.q.out 61d1345c89d7ace2f938af19742033f3d43fdcdf 
>   ql/src/test/results/clientpositive/spark/vectorization_input_format_excludes.q.out 01eb4b46a9d443ebcd0b514c0223a8d6e6df46cb 
>   ql/src/test/results/clientpositive/spark/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/spark/vectorization_pushdown.q.out 6d525518cb60f7f792954fcfadd1c0b6ec5e703a 
>   ql/src/test/results/clientpositive/spark/vectorization_short_regress.q.out c04f2002695ea5f50378552c377e9a79ef2456e9 
>   ql/src/test/results/clientpositive/spark/vectorized_mapjoin.q.out 93ab21e6d951602b962a3464fcbe825152d93c00 
>   ql/src/test/results/clientpositive/spark/vectorized_shufflejoin.q.out fa67ae7eddbe24520b947cb107d44018b87d6a50 
>   ql/src/test/results/clientpositive/spark/vectorized_timestamp_funcs.q.out 2fccd289a4fef744b0029d72dca2e0286cffe768 
>   ql/src/test/results/clientpositive/tez/vectorization_limit.q.out b8a1f9057c4c8425f1cf22e6d57cdb4fd9abe5dc 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions.q.out af058a44e4b54137d3186e943e3eb8424bbd22b4 
>   ql/src/test/results/clientpositive/udaf_binarysetfunctions_no_cbo.q.out PRE-CREATION 
>   ql/src/test/results/clientpositive/udaf_number_format.q.out 14ab23dc0e077486554882f49c1489274211523f 
>   ql/src/test/results/clientpositive/udf3.q.out 9f9f56fe02d0eae1f683558701c65fa244fe48cf 
>   ql/src/test/results/clientpositive/udf8.q.out d75cd782175b857314b5ef19d90d00519630220b 
>   ql/src/test/results/clientpositive/union_remove_6_subq.q.out 096d98db3ad579675c9c4763ffbf37333ee70f6d 
>   ql/src/test/results/clientpositive/vector_aggregate_9.q.out 6cf99bb0b8a39772a249272cd8c6d186a7232fb6 
>   ql/src/test/results/clientpositive/vector_cast_constant.q.out 4b06016702113157bdc3b566a1226df9b6ab8a3d 
>   ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out c17951a738647c43cd54cd7b9c8e8cdcaa7de685 
>   ql/src/test/results/clientpositive/vector_decimal_precision.q.out 6e41f536de776eb271c4b9c00fc9bfa32470c33b 
>   ql/src/test/results/clientpositive/vector_groupby_reduce.q.out 5ac1ea898570378c58b281eb1d6c410adbbf0126 
>   ql/src/test/results/clientpositive/vectorization_1.q.out 97334a3fb2240197ec5b3fe236bb4003f902bea8 
>   ql/src/test/results/clientpositive/vectorization_12.q.out ba0882f447add5985c8b8389329b5c7d8c4731d7 
>   ql/src/test/results/clientpositive/vectorization_13.q.out e41a0d7e529a7eef3fc7fb9457690a35a2ad17b3 
>   ql/src/test/results/clientpositive/vectorization_14.q.out 02a986c111755b3664597330d167fa0a6165e387 
>   ql/src/test/results/clientpositive/vectorization_15.q.out a8d681b06e45da5930853787479ede07ce5f852d 
>   ql/src/test/results/clientpositive/vectorization_16.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_2.q.out 1df05af721b554fa17bde03859793f9ae80fb70c 
>   ql/src/test/results/clientpositive/vectorization_3.q.out 0cee2546f60190912ce95d7c866e2f3b970df027 
>   ql/src/test/results/clientpositive/vectorization_4.q.out 014750bd28a6119db957d3d188af41e209c8e862 
>   ql/src/test/results/clientpositive/vectorization_9.q.out 97c6ffbec9ff608799a049ed571e53358821ba75 
>   ql/src/test/results/clientpositive/vectorization_limit.q.out a4ff11daa72c4a0f8419c9cf2c3cb59a925e860e 
>   ql/src/test/results/clientpositive/vectorization_not.q.out b5587ba4d064a1d78956a1fa446ee0a3b1328253 
>   ql/src/test/results/clientpositive/vectorization_pushdown.q.out a13a0a08ceae35883da919ba1d0320795a64d726 
>   ql/src/test/results/clientpositive/vectorized_distinct_gby.q.out dc7add7a61a97dd9e16699c33f36dc3f4e9d918c 
>   ql/src/test/results/clientpositive/vectorized_mapjoin.q.out a6fee455ae73aaece5150f473e2b6701b53cca66 
>   ql/src/test/results/clientpositive/vectorized_parquet_types.q.out 0dc582f77fa716b8919c4626b5d821025b654fe5 
>   ql/src/test/results/clientpositive/vectorized_shufflejoin.q.out 6edb69aaad6b90164632e7ca7d9e58e77e920638 
>   ql/src/test/results/clientpositive/vectorized_timestamp.q.out fb0672c00283958087b7c82768f5ad122596386b 
>   ql/src/test/results/clientpositive/vectorized_timestamp_funcs.q.out 2ccff7b9197adab0d9283197ad701d0866d4ed81 
>   ql/src/test/results/clientpositive/view_cbo.q.out c740596e70a2300e2828a898c1e954c0242fda9c 
> 
> 
> Diff: https://reviews.apache.org/r/66179/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Jesús Camacho Rodríguez
> 
>