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