HIVE-20449 : DruidMiniTests - Move creation of druid table from allTypesOrc to test setup phase (Nishant Bangarwa via Ashutosh Chauhan)
Signed-off-by: Ashutosh Chauhan <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/acc6fa26 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/acc6fa26 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/acc6fa26 Branch: refs/heads/master Commit: acc6fa2628e61afe4453e0ba69255771303d2041 Parents: a3f0f99 Author: Nishant Bangarwa <[email protected]> Authored: Mon Aug 27 16:28:28 2018 -0700 Committer: Ashutosh Chauhan <[email protected]> Committed: Mon Aug 27 16:28:28 2018 -0700 ---------------------------------------------------------------------- .../druid_table_alltypesorc/load.hive.sql | 36 ++ .../org/apache/hive/druid/MiniDruidCluster.java | 4 +- .../queries/clientpositive/druid_timestamptz2.q | 39 +- .../clientpositive/druidmini_expressions.q | 123 ++--- .../clientpositive/druidmini_extractTime.q | 94 ++-- .../clientpositive/druidmini_floorTime.q | 87 ++-- .../queries/clientpositive/druidmini_test1.q | 77 ++- .../queries/clientpositive/druidmini_test_ts.q | 62 +-- .../druid/druid_timestamptz2.q.out | 183 ++----- .../druid/druidmini_expressions.q.out | 499 ++++++++----------- .../druid/druidmini_extractTime.q.out | 355 ++++++------- .../druid/druidmini_floorTime.q.out | 315 +++++------- .../clientpositive/druid/druidmini_test1.q.out | 283 +++++------ .../druid/druidmini_test_ts.q.out | 393 +++++++-------- 14 files changed, 1061 insertions(+), 1489 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/data/files/datasets/druid_table_alltypesorc/load.hive.sql ---------------------------------------------------------------------- diff --git a/data/files/datasets/druid_table_alltypesorc/load.hive.sql b/data/files/datasets/druid_table_alltypesorc/load.hive.sql new file mode 100644 index 0000000..5fde266 --- /dev/null +++ b/data/files/datasets/druid_table_alltypesorc/load.hive.sql @@ -0,0 +1,36 @@ +CREATE TABLE alltypesorc1( + ctinyint TINYINT, + csmallint SMALLINT, + cint INT, + cbigint BIGINT, + cfloat FLOAT, + cdouble DOUBLE, + cstring1 STRING, + cstring2 STRING, + ctimestamp1 TIMESTAMP, + ctimestamp2 TIMESTAMP, + cboolean1 BOOLEAN, + cboolean2 BOOLEAN) + STORED AS ORC; + +LOAD DATA LOCAL INPATH "${hiveconf:test.data.dir}/alltypesorc" +OVERWRITE INTO TABLE alltypesorc1; + +CREATE EXTERNAL TABLE druid_table_alltypesorc +STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' +TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") +AS +SELECT cast (`ctimestamp1` as timestamp with local time zone) as `__time`, + cstring1, + cstring2, + cdouble, + cfloat, + ctinyint, + csmallint, + cint, + cbigint, + cboolean1, + cboolean2 + FROM alltypesorc1 where ctimestamp1 IS NOT NULL; + +DROP TABLE alltypesorc1; http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/itests/qtest-druid/src/main/java/org/apache/hive/druid/MiniDruidCluster.java ---------------------------------------------------------------------- diff --git a/itests/qtest-druid/src/main/java/org/apache/hive/druid/MiniDruidCluster.java b/itests/qtest-druid/src/main/java/org/apache/hive/druid/MiniDruidCluster.java index 31555cf..2a31952 100644 --- a/itests/qtest-druid/src/main/java/org/apache/hive/druid/MiniDruidCluster.java +++ b/itests/qtest-druid/src/main/java/org/apache/hive/druid/MiniDruidCluster.java @@ -67,8 +67,8 @@ public class MiniDruidCluster extends AbstractService { "druid.indexer.logs.type", "file", "druid.coordinator.asOverlord.enabled", "true", "druid.coordinator.asOverlord.overlordService", "druid/overlord", - "druid.coordinator.period", "PT10S", - "druid.manager.segments.pollDuration", "PT10S" + "druid.coordinator.period", "PT2S", + "druid.manager.segments.pollDuration", "PT2S" ); private static final int MIN_PORT_NUMBER = 60000; private static final int MAX_PORT_NUMBER = 65535; http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druid_timestamptz2.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druid_timestamptz2.q b/ql/src/test/queries/clientpositive/druid_timestamptz2.q index 8b2c092..29cc02f 100644 --- a/ql/src/test/queries/clientpositive/druid_timestamptz2.q +++ b/ql/src/test/queries/clientpositive/druid_timestamptz2.q @@ -4,12 +4,13 @@ CREATE database druid_test_dst; use druid_test_dst; create external table test_base_table(`timecolumn` timestamp, `interval_marker` string, `num_l` double); -insert into test_base_table values ('2015-03-08 00:00:00', 'i1-start', 4); -insert into test_base_table values ('2015-03-08 23:59:59', 'i1-end', 1); -insert into test_base_table values ('2015-03-09 00:00:00', 'i2-start', 4); -insert into test_base_table values ('2015-03-09 23:59:59', 'i2-end', 1); -insert into test_base_table values ('2015-03-10 00:00:00', 'i3-start', 2); -insert into test_base_table values ('2015-03-10 23:59:59', 'i3-end', 2); +insert into test_base_table values +('2015-03-08 00:00:00', 'i1-start', 4), +('2015-03-08 23:59:59', 'i1-end', 1), +('2015-03-09 00:00:00', 'i2-start', 4), +('2015-03-09 23:59:59', 'i2-end', 1), +('2015-03-10 00:00:00', 'i3-start', 2), +('2015-03-10 23:59:59', 'i3-end', 2); CREATE EXTERNAL TABLE druid_test_table_1 STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' @@ -25,12 +26,13 @@ STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' TBLPROPERTIES ("druid.segment.granularity" = "DAY"); -insert into druid_test_table_2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4); -insert into druid_test_table_2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1); -insert into druid_test_table_2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4); -insert into druid_test_table_2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1); -insert into druid_test_table_2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2); -insert into druid_test_table_2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2); +insert into druid_test_table_2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2); select * FROM druid_test_table_2; @@ -50,11 +52,12 @@ STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' TBLPROPERTIES ("druid.segment.granularity" = "DAY"); -insert into druid_test_table_utc2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4); -insert into druid_test_table_utc2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1); -insert into druid_test_table_utc2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4); -insert into druid_test_table_utc2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1); -insert into druid_test_table_utc2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2); -insert into druid_test_table_utc2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2); +insert into druid_test_table_utc2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2); select * FROM druid_test_table_utc2; http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druidmini_expressions.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druidmini_expressions.q b/ql/src/test/queries/clientpositive/druidmini_expressions.q index 9723585..0ebceb1 100644 --- a/ql/src/test/queries/clientpositive/druidmini_expressions.q +++ b/ql/src/test/queries/clientpositive/druidmini_expressions.q @@ -1,145 +1,128 @@ ---! qt:dataset:alltypesorc +--! qt:dataset:druid_table_alltypesorc SET hive.ctas.external.tables=true; SET hive.vectorized.execution.enabled=false; -CREATE EXTERNAL TABLE druid_table_n0 -STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' -TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") -AS -SELECT cast (`ctimestamp1` as timestamp with local time zone) as `__time`, - cstring1, - cstring2, - cdouble, - cfloat, - ctinyint, - csmallint, - cint, - cbigint, - cboolean1, - cboolean2 - FROM alltypesorc where ctimestamp1 IS NOT NULL; -- MATH AND STRING functions -SELECT count(*) FROM druid_table_n0 WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; +SELECT count(*) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; -SELECT count(*) FROM druid_table_n0 WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10; +SELECT count(*) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10; -SELECT count(*) FROM druid_table_n0 WHERE power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; +SELECT count(*) FROM druid_table_alltypesorc WHERE power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; 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 OR ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1; +FROM druid_table_alltypesorc WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000 OR ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1; 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; +FROM druid_table_alltypesorc WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000; 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; +FROM druid_table_alltypesorc WHERE ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1; 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; +FROM druid_table_alltypesorc WHERE SIN(cdouble) > 1; -SELECT cstring1 || '_'|| cstring2, substring(cstring2, 2, 3) as concat , upper(cstring2), lower(cstring1), SUM(cdouble) as s FROM druid_table_n0 WHERE cstring1 IS NOT NULL AND cstring2 IS NOT NULL AND cstring2 like 'Y%' +SELECT cstring1 || '_'|| cstring2, substring(cstring2, 2, 3) as concat , upper(cstring2), lower(cstring1), SUM(cdouble) as s FROM druid_table_alltypesorc WHERE cstring1 IS NOT NULL AND cstring2 IS NOT NULL AND cstring2 like 'Y%' GROUP BY cstring1 || '_'|| cstring2, substring(cstring2, 2, 3), upper(cstring2), lower(cstring1) ORDER BY concat DESC LIMIT 10; -EXPLAIN SELECT count(*) FROM druid_table_n0 WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; +EXPLAIN SELECT count(*) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3; EXPLAIN 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 OR ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1; + FROM druid_table_alltypesorc WHERE ceil(cfloat) > 0 AND floor(cdouble) * 2 < 1000 OR ln(cdouble) / log10(10) > 0 AND COS(cint) > 0 OR SIN(cdouble) > 1; -EXPLAIN SELECT cstring1 || '_'|| cstring2, substring(cstring2, 2, 3) as concat , upper(cstring2), lower(cstring1), SUM(cdouble) as s FROM druid_table_n0 WHERE cstring1 IS NOT NULL AND cstring2 IS NOT NULL AND cstring2 like 'Y%' +EXPLAIN SELECT cstring1 || '_'|| cstring2, substring(cstring2, 2, 3) as concat , upper(cstring2), lower(cstring1), SUM(cdouble) as s FROM druid_table_alltypesorc WHERE cstring1 IS NOT NULL AND cstring2 IS NOT NULL AND cstring2 like 'Y%' GROUP BY cstring1 || '_'|| cstring2, substring(cstring2, 2, 3), upper(cstring2), lower(cstring1) ORDER BY concat DESC LIMIT 10; -explain extended select count(*) from (select `__time` from druid_table_n0 limit 1) as src ; +explain extended select count(*) from (select `__time` from druid_table_alltypesorc limit 1) as src ; SELECT `__time` -FROM druid_table_n0 +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00') OR (`__time` BETWEEN '1968-02-01 00:00:00' AND '1970-04-01 00:00:00') ORDER BY `__time` ASC LIMIT 10; -- COUNT DISTINCT TESTS -- AS PART OF https://issues.apache.org/jira/browse/HIVE-19586 -EXPLAIN select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_n0 GROUP BY `__time`, `cstring1` ; +EXPLAIN select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_alltypesorc GROUP BY `__time`, `cstring1` ; -EXPLAIN select count(distinct cdouble), sum(cdouble) FROM druid_table_n0 GROUP BY `__time`, `cstring1` ; +EXPLAIN select count(distinct cdouble), sum(cdouble) FROM druid_table_alltypesorc GROUP BY `__time`, `cstring1` ; -EXPLAIN select count(distinct cstring2), sum(2 * cdouble) FROM druid_table_n0 GROUP BY `__time`, `cstring1` ; +EXPLAIN select count(distinct cstring2), sum(2 * cdouble) FROM druid_table_alltypesorc GROUP BY `__time`, `cstring1` ; -EXPLAIN select count(distinct cstring2 || '_'|| cstring1), sum(cdouble) FROM druid_table_n0 GROUP BY `__time`, `cstring1` ; +EXPLAIN select count(distinct cstring2 || '_'|| cstring1), sum(cdouble) FROM druid_table_alltypesorc GROUP BY `__time`, `cstring1` ; -EXPLAIN select count(DISTINCT cstring2) FROM druid_table_n0 ; -EXPLAIN select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_n0 ; -EXPLAIN select count(distinct cstring2 || '_'|| cstring1), sum(cdouble), min(cint) FROM druid_table_n0; +EXPLAIN select count(DISTINCT cstring2) FROM druid_table_alltypesorc ; +EXPLAIN select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_alltypesorc ; +EXPLAIN select count(distinct cstring2 || '_'|| cstring1), sum(cdouble), min(cint) FROM druid_table_alltypesorc; -select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_n0 GROUP BY floor_year(`__time`) ; +select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_alltypesorc GROUP BY floor_year(`__time`) ; -select count(distinct cstring2), sum(2 * cdouble) FROM druid_table_n0 GROUP BY floor_year(`__time`) ; +select count(distinct cstring2), sum(2 * cdouble) FROM druid_table_alltypesorc GROUP BY floor_year(`__time`) ; -select count(DISTINCT cstring2) FROM druid_table_n0 ; +select count(DISTINCT cstring2) FROM druid_table_alltypesorc ; -select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_n0 ; +select count(DISTINCT cstring2), sum(cdouble) FROM druid_table_alltypesorc ; -select count(distinct cstring2 || '_'|| cstring1), sum(cdouble), min(cint) FROM druid_table_n0; +select count(distinct cstring2 || '_'|| cstring1), sum(cdouble), min(cint) FROM druid_table_alltypesorc; -explain select unix_timestamp(from_unixtime(1396681200)) from druid_table_n0 limit 1; -select unix_timestamp(from_unixtime(1396681200)) from druid_table_n0 limit 1; +explain select unix_timestamp(from_unixtime(1396681200)) from druid_table_alltypesorc limit 1; +select unix_timestamp(from_unixtime(1396681200)) from druid_table_alltypesorc limit 1; -explain select unix_timestamp(`__time`) from druid_table_n0 limit 1; -select unix_timestamp(`__time`) from druid_table_n0 limit 1; +explain select unix_timestamp(`__time`) from druid_table_alltypesorc limit 1; +select unix_timestamp(`__time`) from druid_table_alltypesorc limit 1; explain select FROM_UNIXTIME(UNIX_TIMESTAMP(CAST(`__time` as timestamp ),'yyyy-MM-dd HH:mm:ss' ),'yyyy-MM-dd HH:mm:ss') -from druid_table_n0 +from druid_table_alltypesorc GROUP BY FROM_UNIXTIME(UNIX_TIMESTAMP(CAST(`__time` as timestamp ),'yyyy-MM-dd HH:mm:ss' ),'yyyy-MM-dd HH:mm:ss'); select FROM_UNIXTIME(UNIX_TIMESTAMP (CAST(`__time` as timestamp ),'yyyy-MM-dd HH:mm:ss' ),'yyyy-MM-dd HH:mm:ss') -from druid_table_n0 +from druid_table_alltypesorc GROUP BY FROM_UNIXTIME(UNIX_TIMESTAMP(CAST(`__time` as timestamp ),'yyyy-MM-dd HH:mm:ss' ),'yyyy-MM-dd HH:mm:ss'); -explain select TRUNC(cast(`__time` as timestamp), 'YY') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'YY'); -select TRUNC(cast(`__time` as timestamp), 'YY') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'YY'); -select TRUNC(cast(`__time` as timestamp), 'YEAR') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'YEAR'); -select TRUNC(cast(`__time` as timestamp), 'YYYY') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'YYYY'); +explain select TRUNC(cast(`__time` as timestamp), 'YY') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'YY'); +select TRUNC(cast(`__time` as timestamp), 'YY') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'YY'); +select TRUNC(cast(`__time` as timestamp), 'YEAR') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'YEAR'); +select TRUNC(cast(`__time` as timestamp), 'YYYY') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'YYYY'); -explain select TRUNC(cast(`__time` as timestamp), 'MONTH') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'MONTH'); -select TRUNC(cast(`__time` as timestamp), 'MONTH') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'MONTH'); -select TRUNC(cast(`__time` as timestamp), 'MM') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'MM'); -select TRUNC(cast(`__time` as timestamp), 'MON') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'MON'); +explain select TRUNC(cast(`__time` as timestamp), 'MONTH') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'MONTH'); +select TRUNC(cast(`__time` as timestamp), 'MONTH') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'MONTH'); +select TRUNC(cast(`__time` as timestamp), 'MM') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'MM'); +select TRUNC(cast(`__time` as timestamp), 'MON') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'MON'); -explain select TRUNC(cast(`__time` as timestamp), 'QUARTER') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'QUARTER'); -select TRUNC(cast(`__time` as timestamp), 'QUARTER') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'QUARTER'); -select TRUNC(cast(`__time` as timestamp), 'Q') from druid_table_n0 GROUP BY TRUNC(cast(`__time` as timestamp), 'Q'); +explain select TRUNC(cast(`__time` as timestamp), 'QUARTER') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'QUARTER'); +select TRUNC(cast(`__time` as timestamp), 'QUARTER') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'QUARTER'); +select TRUNC(cast(`__time` as timestamp), 'Q') from druid_table_alltypesorc GROUP BY TRUNC(cast(`__time` as timestamp), 'Q'); -explain select TO_DATE(`__time`) from druid_table_n0 GROUP BY TO_DATE(`__time`); -select TO_DATE(`__time`) from druid_table_n0 GROUP BY TO_DATE(`__time`); +explain select TO_DATE(`__time`) from druid_table_alltypesorc GROUP BY TO_DATE(`__time`); +select TO_DATE(`__time`) from druid_table_alltypesorc GROUP BY TO_DATE(`__time`); EXPLAIN SELECT SUM((`druid_table_alias`.`cdouble` * `druid_table_alias`.`cdouble`)) AS `sum_calculation_4998925219892510720_ok`, CAST(TRUNC(CAST(`druid_table_alias`.`__time` AS TIMESTAMP),'MM') AS DATE) AS `tmn___time_ok` -FROM `default`.`druid_table_n0` `druid_table_alias` +FROM `default`.`druid_table_alltypesorc` `druid_table_alias` GROUP BY CAST(TRUNC(CAST(`druid_table_alias`.`__time` AS TIMESTAMP),'MM') AS DATE); SELECT SUM((`druid_table_alias`.`cdouble` * `druid_table_alias`.`cdouble`)) AS `sum_calculation_4998925219892510720_ok`, CAST(TRUNC(CAST(`druid_table_alias`.`__time` AS TIMESTAMP),'MM') AS DATE) AS `tmn___time_ok` -FROM `default`.`druid_table_n0` `druid_table_alias` +FROM `default`.`druid_table_alltypesorc` `druid_table_alias` GROUP BY CAST(TRUNC(CAST(`druid_table_alias`.`__time` AS TIMESTAMP),'MM') AS DATE); -explain SELECT DATE_ADD(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_1, DATE_SUB(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_2 from druid_table_n0 order by date_1, date_2 limit 3; -SELECT DATE_ADD(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_1, DATE_SUB(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_2 from druid_table_n0 order by date_1, date_2 limit 3; +explain SELECT DATE_ADD(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_1, DATE_SUB(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_2 from druid_table_alltypesorc order by date_1, date_2 limit 3; +SELECT DATE_ADD(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_1, DATE_SUB(cast(`__time` as date), CAST((cdouble / 1000) AS INT)) as date_2 from druid_table_alltypesorc order by date_1, date_2 limit 3; -- Boolean Values -- Expected results of this query are wrong due to https://issues.apache.org/jira/browse/CALCITE-2319 -- It should get fixed once we upgrade calcite - EXPLAIN SELECT cboolean2, count(*) from druid_table_n0 GROUP BY cboolean2; - SELECT cboolean2, count(*) from druid_table_n0 GROUP BY cboolean2; + EXPLAIN SELECT cboolean2, count(*) from druid_table_alltypesorc GROUP BY cboolean2; + SELECT cboolean2, count(*) from druid_table_alltypesorc GROUP BY cboolean2; -- Expected results of this query are wrong due to https://issues.apache.org/jira/browse/CALCITE-2319 -- It should get fixed once we upgrade calcite - SELECT ctinyint > 2, count(*) from druid_table_n0 GROUP BY ctinyint > 2; + SELECT ctinyint > 2, count(*) from druid_table_alltypesorc GROUP BY ctinyint > 2; - EXPLAIN SELECT ctinyint > 2, count(*) from druid_table_n0 GROUP BY ctinyint > 2; + EXPLAIN SELECT ctinyint > 2, count(*) from druid_table_alltypesorc GROUP BY ctinyint > 2; -DROP TABLE druid_table_n0; -- Tests for testing handling of date/time funtions on druid dimensions stored as strings CREATE TABLE druid_table_n1 http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druidmini_extractTime.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druidmini_extractTime.q b/ql/src/test/queries/clientpositive/druidmini_extractTime.q index 0dbcd25..03afbe2 100644 --- a/ql/src/test/queries/clientpositive/druidmini_extractTime.q +++ b/ql/src/test/queries/clientpositive/druidmini_extractTime.q @@ -1,100 +1,83 @@ ---! qt:dataset:alltypesorc - +--! qt:dataset:druid_table_alltypesorc SET hive.vectorized.execution.enabled=false; SET hive.ctas.external.tables=true; SET hive.external.table.purge.default = true; -CREATE EXTERNAL TABLE druid_table -STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' -TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") -AS -SELECT cast (`ctimestamp1` as timestamp with local time zone) as `__time`, - cstring1, - cstring2, - cdouble, - cfloat, - ctinyint, - csmallint, - cint, - cbigint, - cboolean1, - cboolean2 - FROM alltypesorc where ctimestamp1 IS NOT NULL; -- GROUP BY TIME EXTRACT --SECONDS -SELECT EXTRACT(SECOND from `__time`) FROM druid_table +SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(SECOND from `__time`); -EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(SECOND from `__time`); -- MINUTES -SELECT EXTRACT(MINUTE from `__time`) FROM druid_table +SELECT EXTRACT(MINUTE from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MINUTE from `__time`); -EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MINUTE from `__time`); -- HOUR -SELECT EXTRACT(HOUR from `__time`) FROM druid_table +SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(HOUR from `__time`); -EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(HOUR from `__time`); -- DAY -SELECT EXTRACT(DAY from `__time`) FROM druid_table +SELECT EXTRACT(DAY from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(DAY from `__time`); -EXPLAIN SELECT EXTRACT(DAY from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(DAY from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(DAY from `__time`); --WEEK -SELECT EXTRACT(WEEK from `__time`) FROM druid_table +SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(WEEK from `__time`); -EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(WEEK from `__time`); --MONTH -SELECT EXTRACT(MONTH from `__time`) FROM druid_table +SELECT EXTRACT(MONTH from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MONTH from `__time`); -EXPLAIN SELECT EXTRACT(MONTH from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(MONTH from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MONTH from `__time`); --QUARTER -SELECT EXTRACT(QUARTER from `__time`) FROM druid_table +SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(QUARTER from `__time`); -EXPLAIN SELECT EXTRACT(QUARTER from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(QUARTER from `__time`); -- YEAR -SELECT EXTRACT(YEAR from `__time`) FROM druid_table +SELECT EXTRACT(YEAR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(YEAR from `__time`); -EXPLAIN SELECT EXTRACT(YEAR from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(YEAR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(YEAR from `__time`); @@ -102,81 +85,81 @@ AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP B -- SECOND -EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; +EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; -SELECT EXTRACT(SECOND from `__time`) FROM druid_table WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; +SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; -- MINUTE -EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(MINUTE from `__time`) >= 0 LIMIT 2; -SELECT EXTRACT(MINUTE from `__time`) as minute FROM druid_table +SELECT EXTRACT(MINUTE from `__time`) as minute FROM druid_table_alltypesorc WHERE EXTRACT(MINUTE from `__time`) >= 0 order by minute LIMIT 2; -- HOUR -EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table +EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 LIMIT 1; -SELECT EXTRACT(HOUR from `__time`) FROM druid_table +SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 LIMIT 1; --DAY EXPLAIN SELECT EXTRACT(DAY from `__time`), EXTRACT(DAY from `__time`) DIV 7 AS WEEK, SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) AS day_str -FROM druid_table WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1; +FROM druid_table_alltypesorc WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1; SELECT EXTRACT(DAY from `__time`) , EXTRACT(DAY from `__time`) DIV 7 AS WEEK, SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) AS dar_str -FROM druid_table WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1 ; +FROM druid_table_alltypesorc WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1 ; -- WEEK -EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table WHERE EXTRACT(WEEK from `__time`) >= 1 +EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(WEEK from `__time`) >= 1 AND EXTRACT(WEEK from `__time`) DIV 4 + 1 = 1 LIMIT 1; -SELECT EXTRACT(WEEK from `__time`) FROM druid_table WHERE EXTRACT(WEEK from `__time`) >= 1 +SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(WEEK from `__time`) >= 1 AND EXTRACT(WEEK from `__time`) DIV 4 + 1 = 1 LIMIT 1 ; --MONTH -EXPLAIN SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table +EXPLAIN SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_alltypesorc WHERE EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 AND EXTRACT(MONTH FROM `__time`) BETWEEN 11 AND 12 LIMIT 1; -SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table +SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_alltypesorc WHERE EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 AND EXTRACT(MONTH FROM `__time`) BETWEEN 11 AND 12 LIMIT 1; --QUARTER -EXPLAIN SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table WHERE EXTRACT(QUARTER from `__time`) >= 4 +EXPLAIN SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_alltypesorc WHERE EXTRACT(QUARTER from `__time`) >= 4 AND EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 LIMIT 1; -SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table WHERE EXTRACT(QUARTER from `__time`) >= 4 +SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_alltypesorc WHERE EXTRACT(QUARTER from `__time`) >= 4 AND EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 LIMIT 1; --YEAR -EXPLAIN SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) AS year_str FROM druid_table WHERE EXTRACT(YEAR from `__time`) >= 1969 +EXPLAIN SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) AS year_str FROM druid_table_alltypesorc WHERE EXTRACT(YEAR from `__time`) >= 1969 AND CAST(EXTRACT(YEAR from `__time`) as STRING) = '1969' LIMIT 1; -SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) as year_str FROM druid_table WHERE EXTRACT(YEAR from `__time`) >= 1969 +SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) as year_str FROM druid_table_alltypesorc WHERE EXTRACT(YEAR from `__time`) >= 1969 AND CAST(EXTRACT(YEAR from `__time`) as STRING) = '1969' LIMIT 1; -- Cast to Timestamp -explain SELECT CAST(`__time` AS TIMESTAMP) AS `x_time`, SUM(cfloat) FROM druid_table GROUP BY CAST(`__time` AS TIMESTAMP) ORDER BY `x_time` LIMIT 5; +explain SELECT CAST(`__time` AS TIMESTAMP) AS `x_time`, SUM(cfloat) FROM druid_table_alltypesorc GROUP BY CAST(`__time` AS TIMESTAMP) ORDER BY `x_time` LIMIT 5; -SELECT CAST(`__time` AS TIMESTAMP) AS `x_time`, SUM(cfloat) FROM druid_table GROUP BY CAST(`__time` AS TIMESTAMP) ORDER BY `x_time` LIMIT 5; +SELECT CAST(`__time` AS TIMESTAMP) AS `x_time`, SUM(cfloat) FROM druid_table_alltypesorc GROUP BY CAST(`__time` AS TIMESTAMP) ORDER BY `x_time` LIMIT 5; -- Cast to Date -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; +explain SELECT CAST(`__time` AS DATE) AS `x_date`, SUM(cfloat) FROM druid_table_alltypesorc GROUP BY CAST(`__time` AS DATE) ORDER BY `x_date` LIMIT 5; -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; +SELECT CAST(`__time` AS DATE) AS `x_date`, SUM(cfloat) FROM druid_table_alltypesorc GROUP BY CAST(`__time` AS DATE) ORDER BY `x_date` LIMIT 5; -SELECT CAST(`__time` AS DATE) AS `x_date` FROM druid_table ORDER BY `x_date` LIMIT 5; +SELECT CAST(`__time` AS DATE) AS `x_date` FROM druid_table_alltypesorc ORDER BY `x_date` LIMIT 5; -- Test Extract from non datetime column @@ -201,4 +184,3 @@ from druid_test_extract_from_string_table; DROP TABLE druid_test_extract_from_string_table; DROP TABLE test_extract_from_string_base_table; -DROP TABLE druid_table; \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druidmini_floorTime.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druidmini_floorTime.q b/ql/src/test/queries/clientpositive/druidmini_floorTime.q index 3b5334f..b0dce67 100644 --- a/ql/src/test/queries/clientpositive/druidmini_floorTime.q +++ b/ql/src/test/queries/clientpositive/druidmini_floorTime.q @@ -1,100 +1,82 @@ ---! qt:dataset:alltypesorc - +--! qt:dataset:druid_table_alltypesorc SET hive.vectorized.execution.enabled=false; SET hive.ctas.external.tables=true; SET hive.external.table.purge.default = true; -CREATE EXTERNAL TABLE druid_table_n2 -STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' -TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") -AS -SELECT cast (`ctimestamp1` as timestamp with local time zone) as `__time`, - cstring1, - cstring2, - cdouble, - cfloat, - ctinyint, - csmallint, - cint, - cbigint, - cboolean1, - cboolean2 - FROM alltypesorc where ctimestamp1 IS NOT NULL; - -- GROUP BY TIME EXTRACT --SECONDS -SELECT floor(`__time` to SECOND) FROM druid_table_n2 +SELECT floor(`__time` to SECOND) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to SECOND); -EXPLAIN SELECT floor(`__time` to SECOND) FROM druid_table_n2 +EXPLAIN SELECT floor(`__time` to SECOND) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to SECOND); -- MINUTES -SELECT floor(`__time` to MINUTE) FROM druid_table_n2 +SELECT floor(`__time` to MINUTE) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to MINUTE); -EXPLAIN SELECT floor(`__time` to MINUTE) FROM druid_table_n2 +EXPLAIN SELECT floor(`__time` to MINUTE) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to MINUTE); -- HOUR -SELECT floor(`__time` to HOUR) FROM druid_table_n2 +SELECT floor(`__time` to HOUR) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to HOUR); -EXPLAIN SELECT floor(`__time` to HOUR) FROM druid_table_n2 +EXPLAIN SELECT floor(`__time` to HOUR) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY floor(`__time` to HOUR); -- DAY -SELECT EXTRACT(DAY from `__time`) FROM druid_table_n2 +SELECT EXTRACT(DAY from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(DAY from `__time`); -EXPLAIN SELECT EXTRACT(DAY from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(DAY from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(DAY from `__time`); --WEEK -SELECT EXTRACT(WEEK from `__time`) FROM druid_table_n2 +SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(WEEK from `__time`); -EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(WEEK from `__time`); --MONTH -SELECT EXTRACT(MONTH from `__time`) FROM druid_table_n2 +SELECT EXTRACT(MONTH from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MONTH from `__time`); -EXPLAIN SELECT EXTRACT(MONTH from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(MONTH from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(MONTH from `__time`); --QUARTER -SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_n2 +SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(QUARTER from `__time`); -EXPLAIN SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(QUARTER from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(QUARTER from `__time`); -- YEAR -SELECT EXTRACT(YEAR from `__time`) FROM druid_table_n2 +SELECT EXTRACT(YEAR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(YEAR from `__time`); -EXPLAIN SELECT EXTRACT(YEAR from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(YEAR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP BY EXTRACT(YEAR from `__time`); @@ -102,67 +84,64 @@ AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 GROUP B -- SECOND -EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table_n2 WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; +EXPLAIN SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; -SELECT EXTRACT(SECOND from `__time`) FROM druid_table_n2 WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; +SELECT EXTRACT(SECOND from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(SECOND from `__time`) = 0 LIMIT 1; -- MINUTE -EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(MINUTE from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(MINUTE from `__time`) >= 0 LIMIT 2; -SELECT EXTRACT(MINUTE from `__time`) as minute FROM druid_table_n2 +SELECT EXTRACT(MINUTE from `__time`) as minute FROM druid_table_alltypesorc WHERE EXTRACT(MINUTE from `__time`) >= 0 order by minute LIMIT 2; -- HOUR -EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 LIMIT 1; -SELECT EXTRACT(HOUR from `__time`) FROM druid_table_n2 +SELECT EXTRACT(HOUR from `__time`) FROM druid_table_alltypesorc WHERE character_length(CAST(ctinyint AS STRING)) > 1 AND char_length(CAST(ctinyint AS STRING)) < 10 AND power(cfloat, 2) * pow(csmallint, 3) > 1 AND SQRT(ABS(ctinyint)) > 3 LIMIT 1; --DAY EXPLAIN SELECT EXTRACT(DAY from `__time`), EXTRACT(DAY from `__time`) DIV 7 AS WEEK, SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) AS day_str -FROM druid_table_n2 WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1; +FROM druid_table_alltypesorc WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1; SELECT EXTRACT(DAY from `__time`) , EXTRACT(DAY from `__time`) DIV 7 AS WEEK, SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) AS dar_str -FROM druid_table_n2 WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1 ; +FROM druid_table_alltypesorc WHERE SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 9, 2) = 31 LIMIT 1 ; -- WEEK -EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_n2 WHERE EXTRACT(WEEK from `__time`) >= 1 +EXPLAIN SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(WEEK from `__time`) >= 1 AND EXTRACT(WEEK from `__time`) DIV 4 + 1 = 1 LIMIT 1; -SELECT EXTRACT(WEEK from `__time`) FROM druid_table_n2 WHERE EXTRACT(WEEK from `__time`) >= 1 +SELECT EXTRACT(WEEK from `__time`) FROM druid_table_alltypesorc WHERE EXTRACT(WEEK from `__time`) >= 1 AND EXTRACT(WEEK from `__time`) DIV 4 + 1 = 1 LIMIT 1 ; --MONTH -EXPLAIN SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_n2 +EXPLAIN SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_alltypesorc WHERE EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 AND EXTRACT(MONTH FROM `__time`) BETWEEN 11 AND 12 LIMIT 1; -SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_n2 +SELECT EXTRACT(MONTH FROM `__time`) / 4 + 1, EXTRACT(MONTH FROM `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 6, 2) as month_str FROM druid_table_alltypesorc WHERE EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 AND EXTRACT(MONTH FROM `__time`) BETWEEN 11 AND 12 LIMIT 1; --QUARTER -EXPLAIN SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_n2 WHERE EXTRACT(QUARTER from `__time`) >= 4 +EXPLAIN SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_alltypesorc WHERE EXTRACT(QUARTER from `__time`) >= 4 AND EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 LIMIT 1; -SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_n2 WHERE EXTRACT(QUARTER from `__time`) >= 4 +SELECT EXTRACT(QUARTER from `__time`), EXTRACT(MONTH FROM `__time`) / 4 + 1 as q_number FROM druid_table_alltypesorc WHERE EXTRACT(QUARTER from `__time`) >= 4 AND EXTRACT(MONTH FROM `__time`) / 4 + 1 = 4 LIMIT 1; --YEAR -EXPLAIN SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) AS year_str FROM druid_table_n2 WHERE EXTRACT(YEAR from `__time`) >= 1969 +EXPLAIN SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) AS year_str FROM druid_table_alltypesorc WHERE EXTRACT(YEAR from `__time`) >= 1969 AND CAST(EXTRACT(YEAR from `__time`) as STRING) = '1969' LIMIT 1; -SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) as year_str FROM druid_table_n2 WHERE EXTRACT(YEAR from `__time`) >= 1969 +SELECT EXTRACT(YEAR from `__time`), SUBSTRING(CAST(CAST(`__time` AS DATE) AS STRING), 1, 4) as year_str FROM druid_table_alltypesorc WHERE EXTRACT(YEAR from `__time`) >= 1969 AND CAST(EXTRACT(YEAR from `__time`) as STRING) = '1969' LIMIT 1; - - -DROP TABLE druid_table_n2; \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druidmini_test1.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druidmini_test1.q b/ql/src/test/queries/clientpositive/druidmini_test1.q index f53cc05..a4031c6 100644 --- a/ql/src/test/queries/clientpositive/druidmini_test1.q +++ b/ql/src/test/queries/clientpositive/druidmini_test1.q @@ -1,137 +1,120 @@ ---! qt:dataset:alltypesorc +--! qt:dataset:druid_table_alltypesorc SET hive.ctas.external.tables=true; SET hive.external.table.purge.default = true; -CREATE EXTERNAL TABLE druid_table_n3 -STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' -TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") -AS -SELECT cast (`ctimestamp1` as timestamp with local time zone) as `__time`, - cstring1, - cstring2, - cdouble, - cfloat, - ctinyint, - csmallint, - cint, - cbigint, - cboolean1, - cboolean2 - FROM alltypesorc where ctimestamp1 IS NOT NULL; - -- Time Series Query -explain select count(*) FROM druid_table_n3; -SELECT count(*) FROM druid_table_n3; +explain select count(*) FROM druid_table_alltypesorc; +SELECT count(*) FROM druid_table_alltypesorc; EXPLAIN SELECT floor_year(`__time`), SUM(cfloat), SUM(cdouble), SUM(ctinyint), SUM(csmallint),SUM(cint), SUM(cbigint) -FROM druid_table_n3 GROUP BY floor_year(`__time`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); SELECT floor_year(`__time`), SUM(cfloat), SUM(cdouble), SUM(ctinyint), SUM(csmallint),SUM(cint), SUM(cbigint) -FROM druid_table_n3 GROUP BY floor_year(`__time`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); 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`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); 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`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); 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`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); 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`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); -- Group By -EXPLAIN SELECT cstring1, SUM(cdouble) as s FROM druid_table_n3 GROUP BY cstring1 ORDER BY s ASC LIMIT 10; +EXPLAIN SELECT cstring1, SUM(cdouble) as s FROM druid_table_alltypesorc GROUP BY cstring1 ORDER BY s ASC LIMIT 10; -SELECT cstring1, SUM(cdouble) as s FROM druid_table_n3 GROUP BY cstring1 ORDER BY s ASC LIMIT 10; +SELECT cstring1, SUM(cdouble) as s FROM druid_table_alltypesorc GROUP BY cstring1 ORDER BY s ASC LIMIT 10; -EXPLAIN SELECT cstring2, MAX(cdouble) FROM druid_table_n3 GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; +EXPLAIN SELECT cstring2, MAX(cdouble) FROM druid_table_alltypesorc GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; -SELECT cstring2, MAX(cdouble) FROM druid_table_n3 GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; +SELECT cstring2, MAX(cdouble) FROM druid_table_alltypesorc GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; -- TIME STUFF EXPLAIN SELECT `__time` -FROM druid_table_n3 ORDER BY `__time` ASC LIMIT 10; +FROM druid_table_alltypesorc ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_n3 ORDER BY `__time` ASC LIMIT 10; +FROM druid_table_alltypesorc ORDER BY `__time` ASC LIMIT 10; EXPLAIN SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` < '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` < '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; EXPLAIN SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; EXPLAIN SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' AND `__time` < '2011-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' AND `__time` < '2011-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; EXPLAIN SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10;; SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE `__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10;; EXPLAIN SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00') OR (`__time` BETWEEN '1968-02-01 00:00:00' AND '1970-04-01 00:00:00') ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_n3 +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00') OR (`__time` BETWEEN '1968-02-01 00:00:00' AND '1970-04-01 00:00:00') ORDER BY `__time` ASC LIMIT 10; -- Running this against Druid will if Druid version does not include -- this patch https://github.com/druid-io/druid/commit/219e77aeac9b07dc20dd9ab2dd537f3f17498346 -explain select (cstring1 is null ) AS is_null, (cint is not null ) as isnotnull FROM druid_table_n3; +explain select (cstring1 is null ) AS is_null, (cint is not null ) as isnotnull FROM druid_table_alltypesorc; -explain select substring(to_date(`__time`), 4) from druid_table_n3 limit 5; -select substring(to_date(`__time`), 4) from druid_table_n3 limit 5; +explain select substring(to_date(`__time`), 4) from druid_table_alltypesorc limit 5; +select substring(to_date(`__time`), 4) from druid_table_alltypesorc limit 5; -explain select substring(cast(to_date(`__time`) as string), 4) from druid_table_n3 limit 5; -select substring(cast(to_date(`__time`) as string), 4) from druid_table_n3 limit 5; +explain select substring(cast(to_date(`__time`) as string), 4) from druid_table_alltypesorc limit 5; +select substring(cast(to_date(`__time`) as string), 4) from druid_table_alltypesorc limit 5; http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/queries/clientpositive/druidmini_test_ts.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/druidmini_test_ts.q b/ql/src/test/queries/clientpositive/druidmini_test_ts.q index b17da5a..c240522 100644 --- a/ql/src/test/queries/clientpositive/druidmini_test_ts.q +++ b/ql/src/test/queries/clientpositive/druidmini_test_ts.q @@ -1,124 +1,108 @@ ---! qt:dataset:alltypesorc -CREATE TABLE druid_table_test_ts -STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' -TBLPROPERTIES ("druid.segment.granularity" = "HOUR", "druid.query.granularity" = "MINUTE") -AS -SELECT `ctimestamp1` as `__time`, - cstring1, - cstring2, - cdouble, - cfloat, - ctinyint, - csmallint, - cint, - cbigint, - cboolean1, - cboolean2 - FROM alltypesorc where ctimestamp1 IS NOT NULL; +--! qt:dataset:druid_table_alltypesorc -- Time Series Query -SELECT count(*) FROM druid_table_test_ts; +SELECT count(*) FROM druid_table_alltypesorc; SELECT floor_year(`__time`), SUM(cfloat), SUM(cdouble), SUM(ctinyint), SUM(csmallint),SUM(cint), SUM(cbigint) -FROM druid_table_test_ts GROUP BY floor_year(`__time`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); SELECT floor_year(`__time`), MIN(cfloat), MIN(cdouble), MIN(ctinyint), MIN(csmallint),MIN(cint), MIN(cbigint) -FROM druid_table_test_ts GROUP BY floor_year(`__time`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); SELECT floor_year(`__time`), MAX(cfloat), MAX(cdouble), MAX(ctinyint), MAX(csmallint),MAX(cint), MAX(cbigint) -FROM druid_table_test_ts GROUP BY floor_year(`__time`); +FROM druid_table_alltypesorc GROUP BY floor_year(`__time`); -- Group By -SELECT cstring1, SUM(cdouble) as s FROM druid_table_test_ts GROUP BY cstring1 ORDER BY s ASC LIMIT 10; +SELECT cstring1, SUM(cdouble) as s FROM druid_table_alltypesorc GROUP BY cstring1 ORDER BY s ASC LIMIT 10; -SELECT cstring2, MAX(cdouble) FROM druid_table_test_ts GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; +SELECT cstring2, MAX(cdouble) FROM druid_table_alltypesorc GROUP BY cstring2 ORDER BY cstring2 ASC LIMIT 10; -- TIME STUFF SELECT `__time` -FROM druid_table_test_ts ORDER BY `__time` ASC LIMIT 10; +FROM druid_table_alltypesorc ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` < '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` >= '1968-01-01 00:00:00' AND `__time` <= '1970-03-01 00:00:00' AND `__time` < '2011-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10; SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00' ORDER BY `__time` ASC LIMIT 10;; SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '1968-01-01 00:00:00' AND '1970-01-01 00:00:00') OR (`__time` BETWEEN '1968-02-01 00:00:00' AND '1970-04-01 00:00:00') ORDER BY `__time` ASC LIMIT 10; -- (-ââ¥+â) EXPLAIN SELECT `__time` -FROM druid_table_test_ts; +FROM druid_table_alltypesorc; -- (-ââ¥2012-03-01 00:00:00) EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` < '2012-03-01 00:00:00'; -- [2010-01-01 00:00:00â¥2012-03-01 00:00:00) EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` >= '2010-01-01 00:00:00' AND `__time` <= '2012-03-01 00:00:00'; -- [2010-01-01 00:00:00â¥2011-01-01 00:00:00) EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` >= '2010-01-01 00:00:00' AND `__time` <= '2012-03-01 00:00:00' AND `__time` < '2011-01-01 00:00:00'; -- [2010-01-01 00:00:00â¥2011-01-01 00:00:00] EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` BETWEEN '2010-01-01 00:00:00' AND '2011-01-01 00:00:00'; -- [2010-01-01 00:00:00â¥2011-01-01 00:00:00],[2012-01-01 00:00:00â¥2013-01-01 00:00:00] EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '2010-01-01 00:00:00' AND '2011-01-01 00:00:00') OR (`__time` BETWEEN '2012-01-01 00:00:00' AND '2013-01-01 00:00:00'); -- OVERLAP [2010-01-01 00:00:00â¥2012-01-01 00:00:00] EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE (`__time` BETWEEN '2010-01-01 00:00:00' AND '2011-01-01 00:00:00') OR (`__time` BETWEEN '2010-06-01 00:00:00' AND '2012-01-01 00:00:00'); -- IN: MULTIPLE INTERVALS [2010-01-01 00:00:00â¥2010-01-01 00:00:00),[2011-01-01 00:00:00â¥2011-01-01 00:00:00) EXPLAIN SELECT `__time` -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE `__time` IN ('2010-01-01 00:00:00','2011-01-01 00:00:00'); EXPLAIN SELECT `__time`, cstring2 -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE cstring2 = 'user1' AND `__time` IN ('2010-01-01 00:00:00','2011-01-01 00:00:00'); EXPLAIN SELECT `__time`, cstring2 -FROM druid_table_test_ts +FROM druid_table_alltypesorc WHERE cstring2 = 'user1' OR `__time` IN ('2010-01-01 00:00:00','2011-01-01 00:00:00'); http://git-wip-us.apache.org/repos/asf/hive/blob/acc6fa26/ql/src/test/results/clientpositive/druid/druid_timestamptz2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/druid/druid_timestamptz2.q.out b/ql/src/test/results/clientpositive/druid/druid_timestamptz2.q.out index b62095a..d969031 100644 --- a/ql/src/test/results/clientpositive/druid/druid_timestamptz2.q.out +++ b/ql/src/test/results/clientpositive/druid/druid_timestamptz2.q.out @@ -18,66 +18,23 @@ POSTHOOK: query: create external table test_base_table(`timecolumn` timestamp, ` POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:druid_test_dst POSTHOOK: Output: druid_test_dst@test_base_table -PREHOOK: query: insert into test_base_table values ('2015-03-08 00:00:00', 'i1-start', 4) +PREHOOK: query: insert into test_base_table values +('2015-03-08 00:00:00', 'i1-start', 4), +('2015-03-08 23:59:59', 'i1-end', 1), +('2015-03-09 00:00:00', 'i2-start', 4), +('2015-03-09 23:59:59', 'i2-end', 1), +('2015-03-10 00:00:00', 'i3-start', 2), +('2015-03-10 23:59:59', 'i3-end', 2) PREHOOK: type: QUERY PREHOOK: Input: _dummy_database@_dummy_table PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-08 00:00:00', 'i1-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: Lineage: test_base_table.interval_marker SCRIPT [] -POSTHOOK: Lineage: test_base_table.num_l SCRIPT [] -POSTHOOK: Lineage: test_base_table.timecolumn SCRIPT [] -PREHOOK: query: insert into test_base_table values ('2015-03-08 23:59:59', 'i1-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-08 23:59:59', 'i1-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: Lineage: test_base_table.interval_marker SCRIPT [] -POSTHOOK: Lineage: test_base_table.num_l SCRIPT [] -POSTHOOK: Lineage: test_base_table.timecolumn SCRIPT [] -PREHOOK: query: insert into test_base_table values ('2015-03-09 00:00:00', 'i2-start', 4) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-09 00:00:00', 'i2-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: Lineage: test_base_table.interval_marker SCRIPT [] -POSTHOOK: Lineage: test_base_table.num_l SCRIPT [] -POSTHOOK: Lineage: test_base_table.timecolumn SCRIPT [] -PREHOOK: query: insert into test_base_table values ('2015-03-09 23:59:59', 'i2-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-09 23:59:59', 'i2-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: Lineage: test_base_table.interval_marker SCRIPT [] -POSTHOOK: Lineage: test_base_table.num_l SCRIPT [] -POSTHOOK: Lineage: test_base_table.timecolumn SCRIPT [] -PREHOOK: query: insert into test_base_table values ('2015-03-10 00:00:00', 'i3-start', 2) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-10 00:00:00', 'i3-start', 2) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: Lineage: test_base_table.interval_marker SCRIPT [] -POSTHOOK: Lineage: test_base_table.num_l SCRIPT [] -POSTHOOK: Lineage: test_base_table.timecolumn SCRIPT [] -PREHOOK: query: insert into test_base_table values ('2015-03-10 23:59:59', 'i3-end', 2) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@test_base_table -POSTHOOK: query: insert into test_base_table values ('2015-03-10 23:59:59', 'i3-end', 2) +POSTHOOK: query: insert into test_base_table values +('2015-03-08 00:00:00', 'i1-start', 4), +('2015-03-08 23:59:59', 'i1-end', 1), +('2015-03-09 00:00:00', 'i2-start', 4), +('2015-03-09 23:59:59', 'i2-end', 1), +('2015-03-10 00:00:00', 'i3-start', 2), +('2015-03-10 23:59:59', 'i3-end', 2) POSTHOOK: type: QUERY POSTHOOK: Input: _dummy_database@_dummy_table POSTHOOK: Output: druid_test_dst@test_base_table @@ -133,51 +90,23 @@ TBLPROPERTIES ("druid.segment.granularity" = "DAY") POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:druid_test_dst POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4) +PREHOOK: query: insert into druid_test_table_2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) PREHOOK: type: QUERY PREHOOK: Input: _dummy_database@_dummy_table PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_2 -PREHOOK: query: insert into druid_test_table_2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_2 -POSTHOOK: query: insert into druid_test_table_2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) +POSTHOOK: query: insert into druid_test_table_2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) POSTHOOK: type: QUERY POSTHOOK: Input: _dummy_database@_dummy_table POSTHOOK: Output: druid_test_dst@druid_test_table_2 @@ -244,51 +173,23 @@ TBLPROPERTIES ("druid.segment.granularity" = "DAY") POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:druid_test_dst POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2) -PREHOOK: type: QUERY -PREHOOK: Input: _dummy_database@_dummy_table -PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2) -POSTHOOK: type: QUERY -POSTHOOK: Input: _dummy_database@_dummy_table -POSTHOOK: Output: druid_test_dst@druid_test_table_utc2 -PREHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) +PREHOOK: query: insert into druid_test_table_utc2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) PREHOOK: type: QUERY PREHOOK: Input: _dummy_database@_dummy_table PREHOOK: Output: druid_test_dst@druid_test_table_utc2 -POSTHOOK: query: insert into druid_test_table_utc2 values (cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) +POSTHOOK: query: insert into druid_test_table_utc2 values +(cast('2015-03-08 00:00:00' as timestamp with local time zone), 'i1-start', 4), +(cast('2015-03-08 23:59:59' as timestamp with local time zone), 'i1-end', 1), +(cast('2015-03-09 00:00:00' as timestamp with local time zone), 'i2-start', 4), +(cast('2015-03-09 23:59:59' as timestamp with local time zone), 'i2-end', 1), +(cast('2015-03-10 00:00:00' as timestamp with local time zone), 'i3-start', 2), +(cast('2015-03-10 23:59:59' as timestamp with local time zone), 'i3-end', 2) POSTHOOK: type: QUERY POSTHOOK: Input: _dummy_database@_dummy_table POSTHOOK: Output: druid_test_dst@druid_test_table_utc2
