You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2018/06/13 15:15:05 UTC

hive git commit: HIVE-19868 : Add support for float aggregator (Slim Bouguerra via Ashutosh Chauhan)

Repository: hive
Updated Branches:
  refs/heads/master 7b7f5a3c9 -> bdf39e43a


HIVE-19868 : Add support for float aggregator (Slim Bouguerra via Ashutosh Chauhan)

Signed-off-by: Ashutosh Chauhan <ha...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/bdf39e43
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/bdf39e43
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/bdf39e43

Branch: refs/heads/master
Commit: bdf39e43a7c4225dec9d74dbc5bbdfb0cd685ec5
Parents: 7b7f5a3
Author: Slim Bouguerra <sl...@gmail.com>
Authored: Wed Jun 13 10:13:57 2018 -0500
Committer: Ashutosh Chauhan <ha...@apache.org>
Committed: Wed Jun 13 10:13:57 2018 -0500

----------------------------------------------------------------------
 .../org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java | 3 +++
 .../results/clientpositive/druid/druidmini_expressions.q.out   | 6 +++---
 .../results/clientpositive/druid/druidmini_extractTime.q.out   | 6 +++---
 ql/src/test/results/clientpositive/druid/druidmini_test1.q.out | 6 +++---
 4 files changed, 12 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/bdf39e43/druid-handler/src/java/org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java
----------------------------------------------------------------------
diff --git a/druid-handler/src/java/org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java b/druid-handler/src/java/org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java
index 597761b..5a48d0f 100644
--- a/druid-handler/src/java/org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java
+++ b/druid-handler/src/java/org/apache/hadoop/hive/druid/DruidStorageHandlerUtils.java
@@ -50,6 +50,7 @@ import io.druid.metadata.SQLMetadataConnector;
 import io.druid.metadata.storage.mysql.MySQLConnector;
 import io.druid.query.aggregation.AggregatorFactory;
 import io.druid.query.aggregation.DoubleSumAggregatorFactory;
+import io.druid.query.aggregation.FloatSumAggregatorFactory;
 import io.druid.query.aggregation.LongSumAggregatorFactory;
 import io.druid.query.expression.LikeExprMacro;
 import io.druid.query.expression.RegexpExtractExprMacro;
@@ -825,6 +826,8 @@ public final class DruidStorageHandlerUtils {
         af = new LongSumAggregatorFactory(columnNames.get(i), columnNames.get(i));
         break;
       case FLOAT:
+        af = new FloatSumAggregatorFactory(columnNames.get(i), columnNames.get(i));
+        break;
       case DOUBLE:
         af = new DoubleSumAggregatorFactory(columnNames.get(i), columnNames.get(i));
         break;

http://git-wip-us.apache.org/repos/asf/hive/blob/bdf39e43/ql/src/test/results/clientpositive/druid/druidmini_expressions.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/druid/druidmini_expressions.q.out b/ql/src/test/results/clientpositive/druid/druidmini_expressions.q.out
index b34f47b..fd77a91 100644
--- a/ql/src/test/results/clientpositive/druid/druidmini_expressions.q.out
+++ b/ql/src/test/results/clientpositive/druid/druidmini_expressions.q.out
@@ -90,7 +90,7 @@ FROM druid_table_n0 WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000 OR ln(c
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n0
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-19884.64700973034	27373419	14472	8.51628242804E11	851620413654	68151649880
+19884.646918177605	27373419	14472	8.51628242804E11	851620413654	68151649880
 PREHOOK: query: SELECT  SUM(cfloat + 1), CAST(SUM(cdouble + ctinyint) AS INTEGER), SUM(ctinyint) + 1 , CAST(SUM(csmallint) + SUM(cint) AS DOUBLE), SUM(cint), SUM(cbigint)
 FROM druid_table_n0 WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000
 PREHOOK: type: QUERY
@@ -101,7 +101,7 @@ FROM druid_table_n0 WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n0
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-54430.27000427246	-3740445	51268	1.31919188502E11	131922984948	92160895030
+54430.269943237305	-3740445	51268	1.31919188502E11	131922984948	92160895030
 PREHOOK: query: SELECT  SUM(cfloat + 1), CAST(SUM(cdouble + ctinyint) AS INTEGER), SUM(ctinyint) + 1 , CAST(SUM(csmallint) + SUM(cint) AS DOUBLE), SUM(cint), SUM(cbigint)
 FROM druid_table_n0 WHERE  ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1
 PREHOOK: type: QUERY
@@ -112,7 +112,7 @@ FROM druid_table_n0 WHERE  ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n0
 POSTHOOK: Output: hdfs://### HDFS PATH ###
--2389.5169917345047	27640645	-5707	7.19705549994E11	719697428706	13774723379
+-2389.517022252083	27640645	-5707	7.19705549994E11	719697428706	13774723379
 PREHOOK: query: SELECT  SUM(cfloat + 1), CAST(SUM(cdouble + ctinyint) AS INTEGER), SUM(ctinyint) + 1 , CAST(SUM(csmallint) + SUM(cint) AS DOUBLE), SUM(cint), SUM(cbigint)
 FROM druid_table_n0 WHERE  SIN(cdouble) > 1
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/bdf39e43/ql/src/test/results/clientpositive/druid/druidmini_extractTime.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/druid/druidmini_extractTime.q.out b/ql/src/test/results/clientpositive/druid/druidmini_extractTime.q.out
index 442ae35..f21847b 100644
--- a/ql/src/test/results/clientpositive/druid/druidmini_extractTime.q.out
+++ b/ql/src/test/results/clientpositive/druid/druidmini_extractTime.q.out
@@ -708,8 +708,8 @@ POSTHOOK: query: SELECT CAST(`__time` AS TIMESTAMP) AS `x_time`, SUM(cfloat)  FR
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-1969-12-31 15:59:00	-4532.569952011108
-1969-12-31 16:00:00	-35057.67698967457
+1969-12-31 15:59:00	-4532.570196151733
+1969-12-31 16:00:00	-35057.677050709724
 PREHOOK: query: explain SELECT CAST(`__time` AS DATE) AS `x_date`, SUM(cfloat)  FROM druid_table GROUP BY CAST(`__time` AS DATE) ORDER BY `x_date` LIMIT 5
 PREHOOK: type: QUERY
 POSTHOOK: query: explain SELECT CAST(`__time` AS DATE) AS `x_date`, SUM(cfloat)  FROM druid_table GROUP BY CAST(`__time` AS DATE) ORDER BY `x_date` LIMIT 5
@@ -742,7 +742,7 @@ POSTHOOK: query: SELECT CAST(`__time` AS DATE) AS `x_date`, SUM(cfloat)  FROM dr
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-1969-12-31	-39590.24694168568
+1969-12-31	-39590.24724686146
 PREHOOK: query: SELECT CAST(`__time` AS DATE) AS `x_date` FROM druid_table ORDER BY `x_date` LIMIT 5
 PREHOOK: type: QUERY
 PREHOOK: Input: default@druid_table

http://git-wip-us.apache.org/repos/asf/hive/blob/bdf39e43/ql/src/test/results/clientpositive/druid/druidmini_test1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/druid/druidmini_test1.q.out b/ql/src/test/results/clientpositive/druid/druidmini_test1.q.out
index 59672a0..89da36a 100644
--- a/ql/src/test/results/clientpositive/druid/druidmini_test1.q.out
+++ b/ql/src/test/results/clientpositive/druid/druidmini_test1.q.out
@@ -118,7 +118,7 @@ FROM druid_table_n3 GROUP BY floor_year(`__time`)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n3
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-1969-01-01 00:00:00.0 US/Pacific	-39590.24694168568	2.7308662809692383E7	-39967	7781089	1408069801800	10992545287
+1969-01-01 00:00:00.0 US/Pacific	-39590.24724686146	2.7308662809692383E7	-39967	7781089	1408069801800	10992545287
 PREHOOK: query: EXPLAIN SELECT floor_year(`__time`), MIN(cfloat), MIN(cdouble), MIN(ctinyint), MIN(csmallint),MIN(cint), MIN(cbigint)
 FROM druid_table_n3 GROUP BY floor_year(`__time`)
 PREHOOK: type: QUERY
@@ -155,7 +155,7 @@ FROM druid_table_n3 GROUP BY floor_year(`__time`)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n3
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-1969-01-01 00:00:00.0 US/Pacific	-1790.778	-308691.84375	2	14255	-1073279343	-8577981133
+1969-01-01 00:00:00.0 US/Pacific	-1790.7781	-308691.84375	2	14255	-1073279343	-8577981133
 PREHOOK: query: EXPLAIN SELECT floor_year(`__time`), MAX(cfloat), MAX(cdouble), MAX(ctinyint), MAX(csmallint),MAX(cint), MAX(cbigint)
 FROM druid_table_n3 GROUP BY floor_year(`__time`)
 PREHOOK: type: QUERY
@@ -192,7 +192,7 @@ FROM druid_table_n3 GROUP BY floor_year(`__time`)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@druid_table_n3
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-1969-01-01 00:00:00.0 US/Pacific	769.164	1.9565518E7	-45	-8101	1276572707	4923772860
+1969-01-01 00:00:00.0 US/Pacific	769.16394	1.9565518E7	-45	-8101	1276572707	4923772860
 PREHOOK: query: EXPLAIN SELECT cstring1, SUM(cdouble) as s FROM druid_table_n3 GROUP BY cstring1 ORDER BY s ASC LIMIT 10
 PREHOOK: type: QUERY
 POSTHOOK: query: EXPLAIN SELECT cstring1, SUM(cdouble) as s FROM druid_table_n3 GROUP BY cstring1 ORDER BY s ASC LIMIT 10