hive-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jd...@apache.org
Subject svn commit: r1669376 [5/6] - in /hive/trunk: ant/src/org/apache/hadoop/hive/ant/ common/src/java/org/apache/hive/common/util/ common/src/test/org/apache/hive/common/util/ ql/src/gen/vectorization/ExpressionTemplates/ ql/src/java/org/apache/hadoop/hive/...
Date Thu, 26 Mar 2015 17:49:31 GMT
Added: hive/trunk/ql/src/test/results/clientpositive/vector_interval_2.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/vector_interval_2.q.out?rev=1669376&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/vector_interval_2.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/vector_interval_2.q.out Thu Mar 26 17:49:31 2015
@@ -0,0 +1,1550 @@
+PREHOOK: query: drop table if exists vector_interval_2
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists vector_interval_2
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table vector_interval_2 (ts timestamp, dt date, str1 string, str2 string, str3 string, str4 string) stored as orc
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@vector_interval_2
+POSTHOOK: query: create table vector_interval_2 (ts timestamp, dt date, str1 string, str2 string, str3 string, str4 string) stored as orc
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@vector_interval_2
+PREHOOK: query: insert into vector_interval_2
+  select timestamp '2001-01-01 01:02:03', date '2001-01-01', '1-2', '1-3', '1 2:3:4', '1 2:3:5' from src limit 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@vector_interval_2
+POSTHOOK: query: insert into vector_interval_2
+  select timestamp '2001-01-01 01:02:03', date '2001-01-01', '1-2', '1-3', '1 2:3:4', '1 2:3:5' from src limit 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@vector_interval_2
+POSTHOOK: Lineage: vector_interval_2.dt SIMPLE []
+POSTHOOK: Lineage: vector_interval_2.str1 SIMPLE []
+POSTHOOK: Lineage: vector_interval_2.str2 SIMPLE []
+POSTHOOK: Lineage: vector_interval_2.str3 SIMPLE []
+POSTHOOK: Lineage: vector_interval_2.str4 SIMPLE []
+POSTHOOK: Lineage: vector_interval_2.ts SIMPLE []
+PREHOOK: query: insert into vector_interval_2
+  select null, null, null, null, null, null from src limit 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@vector_interval_2
+POSTHOOK: query: insert into vector_interval_2
+  select null, null, null, null, null, null from src limit 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@vector_interval_2
+POSTHOOK: Lineage: vector_interval_2.dt EXPRESSION []
+POSTHOOK: Lineage: vector_interval_2.str1 EXPRESSION []
+POSTHOOK: Lineage: vector_interval_2.str2 EXPRESSION []
+POSTHOOK: Lineage: vector_interval_2.str3 EXPRESSION []
+POSTHOOK: Lineage: vector_interval_2.str4 EXPRESSION []
+POSTHOOK: Lineage: vector_interval_2.ts EXPRESSION []
+PREHOOK: query: -- interval comparisons in select clause
+
+explain
+select
+  str1,
+  -- Should all be true
+  interval_year_month(str1) = interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str2),
+  interval_year_month(str1) < interval_year_month(str2),
+  interval_year_month(str1) >= interval_year_month(str1),
+  interval_year_month(str2) >= interval_year_month(str1),
+  interval_year_month(str2) > interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str2),
+
+  interval_year_month(str1) = interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-3' year to month,
+  interval_year_month(str1) < interval '1-3' year to month,
+  interval_year_month(str1) >= interval '1-2' year to month,
+  interval_year_month(str2) >= interval '1-2' year to month,
+  interval_year_month(str2) > interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-3' year to month,
+
+  interval '1-2' year to month = interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str2),
+  interval '1-2' year to month < interval_year_month(str2),
+  interval '1-2' year to month >= interval_year_month(str1),
+  interval '1-3' year to month >= interval_year_month(str1),
+  interval '1-3' year to month > interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str2)
+from vector_interval_2 order by str1
+PREHOOK: type: QUERY
+POSTHOOK: query: -- interval comparisons in select clause
+
+explain
+select
+  str1,
+  -- Should all be true
+  interval_year_month(str1) = interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str2),
+  interval_year_month(str1) < interval_year_month(str2),
+  interval_year_month(str1) >= interval_year_month(str1),
+  interval_year_month(str2) >= interval_year_month(str1),
+  interval_year_month(str2) > interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str2),
+
+  interval_year_month(str1) = interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-3' year to month,
+  interval_year_month(str1) < interval '1-3' year to month,
+  interval_year_month(str1) >= interval '1-2' year to month,
+  interval_year_month(str2) >= interval '1-2' year to month,
+  interval_year_month(str2) > interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-3' year to month,
+
+  interval '1-2' year to month = interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str2),
+  interval '1-2' year to month < interval_year_month(str2),
+  interval '1-2' year to month >= interval_year_month(str1),
+  interval '1-3' year to month >= interval_year_month(str1),
+  interval '1-3' year to month > interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str2)
+from vector_interval_2 order by str1
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Select Operator
+              expressions: str1 (type: string), (CAST( str1 AS INTERVAL YEAR TO MONTH) = CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) < CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) > CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <> CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) = 1-2) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <= 1-2) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <=
  1-3) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) < 1-3) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= 1-2) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) >= 1-2) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) > 1-2) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <> 1-3) (type: boolean), (1-2 = CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 <= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 < CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-3 >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-3 > CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 <> CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean)
+              outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18, _col19, _col20, _col21, _col22, _col23, _col24
+              Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: _col0 (type: string)
+                sort order: +
+                Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+                value expressions: _col1 (type: boolean), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col6 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: boolean), _col12 (type: boolean), _col13 (type: boolean), _col14 (type: boolean), _col15 (type: boolean), _col16 (type: boolean), _col17 (type: boolean), _col18 (type: boolean), _col19 (type: boolean), _col20 (type: boolean), _col21 (type: boolean), _col22 (type: boolean), _col23 (type: boolean), _col24 (type: boolean)
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: boolean), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col10 (type: boolean), VALUE._col11 (type: boolean), VALUE._col12 (type: boolean), VALUE._col13 (type: boolean), VALUE._col14 (type: boolean), VALUE._col15 (type: boolean), VALUE._col16 (type: boolean), VALUE._col17 (type: boolean), VALUE._col18 (type: boolean), VALUE._col19 (type: boolean), VALUE._col20 (type: boolean), VALUE._col21 (type: boolean), VALUE._col22 (type: boolean), VALUE._col23 (type: boolean)
+          outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18, _col19, _col20, _col21, _col22, _col23, _col24
+          Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select
+  str1,
+  -- Should all be true
+  interval_year_month(str1) = interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str2),
+  interval_year_month(str1) < interval_year_month(str2),
+  interval_year_month(str1) >= interval_year_month(str1),
+  interval_year_month(str2) >= interval_year_month(str1),
+  interval_year_month(str2) > interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str2),
+
+  interval_year_month(str1) = interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-3' year to month,
+  interval_year_month(str1) < interval '1-3' year to month,
+  interval_year_month(str1) >= interval '1-2' year to month,
+  interval_year_month(str2) >= interval '1-2' year to month,
+  interval_year_month(str2) > interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-3' year to month,
+
+  interval '1-2' year to month = interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str2),
+  interval '1-2' year to month < interval_year_month(str2),
+  interval '1-2' year to month >= interval_year_month(str1),
+  interval '1-3' year to month >= interval_year_month(str1),
+  interval '1-3' year to month > interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str2)
+from vector_interval_2 order by str1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select
+  str1,
+  -- Should all be true
+  interval_year_month(str1) = interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str1),
+  interval_year_month(str1) <= interval_year_month(str2),
+  interval_year_month(str1) < interval_year_month(str2),
+  interval_year_month(str1) >= interval_year_month(str1),
+  interval_year_month(str2) >= interval_year_month(str1),
+  interval_year_month(str2) > interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str2),
+
+  interval_year_month(str1) = interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-2' year to month,
+  interval_year_month(str1) <= interval '1-3' year to month,
+  interval_year_month(str1) < interval '1-3' year to month,
+  interval_year_month(str1) >= interval '1-2' year to month,
+  interval_year_month(str2) >= interval '1-2' year to month,
+  interval_year_month(str2) > interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-3' year to month,
+
+  interval '1-2' year to month = interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str1),
+  interval '1-2' year to month <= interval_year_month(str2),
+  interval '1-2' year to month < interval_year_month(str2),
+  interval '1-2' year to month >= interval_year_month(str1),
+  interval '1-3' year to month >= interval_year_month(str1),
+  interval '1-3' year to month > interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str2)
+from vector_interval_2 order by str1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL
+1-2	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true
+PREHOOK: query: explain
+select
+  str1,
+  -- Should all be false
+  interval_year_month(str1) != interval_year_month(str1),
+  interval_year_month(str1) >= interval_year_month(str2),
+  interval_year_month(str1) > interval_year_month(str2),
+  interval_year_month(str2) <= interval_year_month(str1),
+  interval_year_month(str2) < interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str1),
+
+  interval_year_month(str1) != interval '1-2' year to month,
+  interval_year_month(str1) >= interval '1-3' year to month,
+  interval_year_month(str1) > interval '1-3' year to month,
+  interval_year_month(str2) <= interval '1-2' year to month,
+  interval_year_month(str2) < interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-2' year to month,
+
+  interval '1-2' year to month != interval_year_month(str1),
+  interval '1-2' year to month >= interval_year_month(str2),
+  interval '1-2' year to month > interval_year_month(str2),
+  interval '1-3' year to month <= interval_year_month(str1),
+  interval '1-3' year to month < interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str1)
+from vector_interval_2 order by str1
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select
+  str1,
+  -- Should all be false
+  interval_year_month(str1) != interval_year_month(str1),
+  interval_year_month(str1) >= interval_year_month(str2),
+  interval_year_month(str1) > interval_year_month(str2),
+  interval_year_month(str2) <= interval_year_month(str1),
+  interval_year_month(str2) < interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str1),
+
+  interval_year_month(str1) != interval '1-2' year to month,
+  interval_year_month(str1) >= interval '1-3' year to month,
+  interval_year_month(str1) > interval '1-3' year to month,
+  interval_year_month(str2) <= interval '1-2' year to month,
+  interval_year_month(str2) < interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-2' year to month,
+
+  interval '1-2' year to month != interval_year_month(str1),
+  interval '1-2' year to month >= interval_year_month(str2),
+  interval '1-2' year to month > interval_year_month(str2),
+  interval '1-3' year to month <= interval_year_month(str1),
+  interval '1-3' year to month < interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str1)
+from vector_interval_2 order by str1
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Select Operator
+              expressions: str1 (type: string), (CAST( str1 AS INTERVAL YEAR TO MONTH) <> CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) <= 1-2) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) < 1-2) (type: boolean), (1-2 <> CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 >= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-2 > CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-3 <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (1-3 < CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) > CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) < CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (CAST( str1 AS I
 NTERVAL YEAR TO MONTH) <> 1-2) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= 1-3) (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) > 1-3) (type: boolean)
+              outputColumnNames: _col0, _col1, _col10, _col11, _col13, _col14, _col15, _col16, _col17, _col2, _col3, _col4, _col5, _col7, _col8, _col9
+              Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: _col0 (type: string)
+                sort order: +
+                Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+                value expressions: _col1 (type: boolean), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: boolean), _col13 (type: boolean), _col14 (type: boolean), _col15 (type: boolean), _col16 (type: boolean), _col17 (type: boolean)
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: boolean), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col0 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col5 (type: boolean), VALUE._col10 (type: boolean), VALUE._col11 (type: boolean), VALUE._col12 (type: boolean), VALUE._col13 (type: boolean), VALUE._col14 (type: boolean), VALUE._col10 (type: boolean)
+          outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18
+          Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select
+  str1,
+  -- Should all be false
+  interval_year_month(str1) != interval_year_month(str1),
+  interval_year_month(str1) >= interval_year_month(str2),
+  interval_year_month(str1) > interval_year_month(str2),
+  interval_year_month(str2) <= interval_year_month(str1),
+  interval_year_month(str2) < interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str1),
+
+  interval_year_month(str1) != interval '1-2' year to month,
+  interval_year_month(str1) >= interval '1-3' year to month,
+  interval_year_month(str1) > interval '1-3' year to month,
+  interval_year_month(str2) <= interval '1-2' year to month,
+  interval_year_month(str2) < interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-2' year to month,
+
+  interval '1-2' year to month != interval_year_month(str1),
+  interval '1-2' year to month >= interval_year_month(str2),
+  interval '1-2' year to month > interval_year_month(str2),
+  interval '1-3' year to month <= interval_year_month(str1),
+  interval '1-3' year to month < interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str1)
+from vector_interval_2 order by str1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select
+  str1,
+  -- Should all be false
+  interval_year_month(str1) != interval_year_month(str1),
+  interval_year_month(str1) >= interval_year_month(str2),
+  interval_year_month(str1) > interval_year_month(str2),
+  interval_year_month(str2) <= interval_year_month(str1),
+  interval_year_month(str2) < interval_year_month(str1),
+  interval_year_month(str1) != interval_year_month(str1),
+
+  interval_year_month(str1) != interval '1-2' year to month,
+  interval_year_month(str1) >= interval '1-3' year to month,
+  interval_year_month(str1) > interval '1-3' year to month,
+  interval_year_month(str2) <= interval '1-2' year to month,
+  interval_year_month(str2) < interval '1-2' year to month,
+  interval_year_month(str1) != interval '1-2' year to month,
+
+  interval '1-2' year to month != interval_year_month(str1),
+  interval '1-2' year to month >= interval_year_month(str2),
+  interval '1-2' year to month > interval_year_month(str2),
+  interval '1-3' year to month <= interval_year_month(str1),
+  interval '1-3' year to month < interval_year_month(str1),
+  interval '1-2' year to month != interval_year_month(str1)
+from vector_interval_2 order by str1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL
+1-2	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false
+PREHOOK: query: explain
+select
+  str3,
+  -- Should all be true
+  interval_day_time(str3) = interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str4),
+  interval_day_time(str3) < interval_day_time(str4),
+  interval_day_time(str3) >= interval_day_time(str3),
+  interval_day_time(str4) >= interval_day_time(str3),
+  interval_day_time(str4) > interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str4),
+
+  interval_day_time(str3) = interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:5' day to second,
+  interval_day_time(str3) < interval '1 2:3:5' day to second,
+  interval_day_time(str3) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) > interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:5' day to second,
+
+  interval '1 2:3:4' day to second = interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str4),
+  interval '1 2:3:4' day to second < interval_day_time(str4),
+  interval '1 2:3:4' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second > interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str4)
+from vector_interval_2 order by str3
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select
+  str3,
+  -- Should all be true
+  interval_day_time(str3) = interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str4),
+  interval_day_time(str3) < interval_day_time(str4),
+  interval_day_time(str3) >= interval_day_time(str3),
+  interval_day_time(str4) >= interval_day_time(str3),
+  interval_day_time(str4) > interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str4),
+
+  interval_day_time(str3) = interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:5' day to second,
+  interval_day_time(str3) < interval '1 2:3:5' day to second,
+  interval_day_time(str3) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) > interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:5' day to second,
+
+  interval '1 2:3:4' day to second = interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str4),
+  interval '1 2:3:4' day to second < interval_day_time(str4),
+  interval '1 2:3:4' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second > interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str4)
+from vector_interval_2 order by str3
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Select Operator
+              expressions: str3 (type: string), (CAST( str3 AS INTERVAL DAY TO SECOND) = CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) < CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) > CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <> CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) = 1 02:03:04.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <= 1 02:03:04.000000000) (type: boolean), (CAST( 
 str3 AS INTERVAL DAY TO SECOND) <= 1 02:03:05.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) < 1 02:03:05.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= 1 02:03:04.000000000) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) >= 1 02:03:04.000000000) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) > 1 02:03:04.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <> 1 02:03:05.000000000) (type: boolean), (1 02:03:04.000000000 = CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 <= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 < CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:05.000000000 >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:05.000000000 > CAST( str3 A
 S INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 <> CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean)
+              outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18, _col19, _col20, _col21, _col22, _col23, _col24
+              Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: _col0 (type: string)
+                sort order: +
+                Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+                value expressions: _col1 (type: boolean), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col6 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: boolean), _col12 (type: boolean), _col13 (type: boolean), _col14 (type: boolean), _col15 (type: boolean), _col16 (type: boolean), _col17 (type: boolean), _col18 (type: boolean), _col19 (type: boolean), _col20 (type: boolean), _col21 (type: boolean), _col22 (type: boolean), _col23 (type: boolean), _col24 (type: boolean)
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: boolean), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col10 (type: boolean), VALUE._col11 (type: boolean), VALUE._col12 (type: boolean), VALUE._col13 (type: boolean), VALUE._col14 (type: boolean), VALUE._col15 (type: boolean), VALUE._col16 (type: boolean), VALUE._col17 (type: boolean), VALUE._col18 (type: boolean), VALUE._col19 (type: boolean), VALUE._col20 (type: boolean), VALUE._col21 (type: boolean), VALUE._col22 (type: boolean), VALUE._col23 (type: boolean)
+          outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18, _col19, _col20, _col21, _col22, _col23, _col24
+          Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select
+  str3,
+  -- Should all be true
+  interval_day_time(str3) = interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str4),
+  interval_day_time(str3) < interval_day_time(str4),
+  interval_day_time(str3) >= interval_day_time(str3),
+  interval_day_time(str4) >= interval_day_time(str3),
+  interval_day_time(str4) > interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str4),
+
+  interval_day_time(str3) = interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:5' day to second,
+  interval_day_time(str3) < interval '1 2:3:5' day to second,
+  interval_day_time(str3) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) > interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:5' day to second,
+
+  interval '1 2:3:4' day to second = interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str4),
+  interval '1 2:3:4' day to second < interval_day_time(str4),
+  interval '1 2:3:4' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second > interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str4)
+from vector_interval_2 order by str3
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select
+  str3,
+  -- Should all be true
+  interval_day_time(str3) = interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str3),
+  interval_day_time(str3) <= interval_day_time(str4),
+  interval_day_time(str3) < interval_day_time(str4),
+  interval_day_time(str3) >= interval_day_time(str3),
+  interval_day_time(str4) >= interval_day_time(str3),
+  interval_day_time(str4) > interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str4),
+
+  interval_day_time(str3) = interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:4' day to second,
+  interval_day_time(str3) <= interval '1 2:3:5' day to second,
+  interval_day_time(str3) < interval '1 2:3:5' day to second,
+  interval_day_time(str3) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) >= interval '1 2:3:4' day to second,
+  interval_day_time(str4) > interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:5' day to second,
+
+  interval '1 2:3:4' day to second = interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str3),
+  interval '1 2:3:4' day to second <= interval_day_time(str4),
+  interval '1 2:3:4' day to second < interval_day_time(str4),
+  interval '1 2:3:4' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second >= interval_day_time(str3),
+  interval '1 2:3:5' day to second > interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str4)
+from vector_interval_2 order by str3
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL
+1 2:3:4	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true	true
+PREHOOK: query: explain
+select
+  str3,
+  -- Should all be false
+  interval_day_time(str3) != interval_day_time(str3),
+  interval_day_time(str3) >= interval_day_time(str4),
+  interval_day_time(str3) > interval_day_time(str4),
+  interval_day_time(str4) <= interval_day_time(str3),
+  interval_day_time(str4) < interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str3),
+
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+  interval_day_time(str3) >= interval '1 2:3:5' day to second,
+  interval_day_time(str3) > interval '1 2:3:5' day to second,
+  interval_day_time(str4) <= interval '1 2:3:4' day to second,
+  interval_day_time(str4) < interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+
+  interval '1 2:3:4' day to second != interval_day_time(str3),
+  interval '1 2:3:4' day to second >= interval_day_time(str4),
+  interval '1 2:3:4' day to second > interval_day_time(str4),
+  interval '1 2:3:5' day to second <= interval_day_time(str3),
+  interval '1 2:3:5' day to second < interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str3)
+from vector_interval_2 order by str3
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select
+  str3,
+  -- Should all be false
+  interval_day_time(str3) != interval_day_time(str3),
+  interval_day_time(str3) >= interval_day_time(str4),
+  interval_day_time(str3) > interval_day_time(str4),
+  interval_day_time(str4) <= interval_day_time(str3),
+  interval_day_time(str4) < interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str3),
+
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+  interval_day_time(str3) >= interval '1 2:3:5' day to second,
+  interval_day_time(str3) > interval '1 2:3:5' day to second,
+  interval_day_time(str4) <= interval '1 2:3:4' day to second,
+  interval_day_time(str4) < interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+
+  interval '1 2:3:4' day to second != interval_day_time(str3),
+  interval '1 2:3:4' day to second >= interval_day_time(str4),
+  interval '1 2:3:4' day to second > interval_day_time(str4),
+  interval '1 2:3:5' day to second <= interval_day_time(str3),
+  interval '1 2:3:5' day to second < interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str3)
+from vector_interval_2 order by str3
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Select Operator
+              expressions: str3 (type: string), (CAST( str3 AS INTERVAL DAY TO SECOND) <> CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) <= 1 02:03:04.000000000) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) < 1 02:03:04.000000000) (type: boolean), (1 02:03:04.000000000 <> CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 >= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:04.000000000 > CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:05.000000000 <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (1 02:03:05.000000000 < CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) > CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: bool
 ean), (CAST( str4 AS INTERVAL DAY TO SECOND) < CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <> 1 02:03:04.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= 1 02:03:05.000000000) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) > 1 02:03:05.000000000) (type: boolean)
+              outputColumnNames: _col0, _col1, _col10, _col11, _col13, _col14, _col15, _col16, _col17, _col2, _col3, _col4, _col5, _col7, _col8, _col9
+              Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: _col0 (type: string)
+                sort order: +
+                Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+                value expressions: _col1 (type: boolean), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: boolean), _col13 (type: boolean), _col14 (type: boolean), _col15 (type: boolean), _col16 (type: boolean), _col17 (type: boolean)
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: boolean), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col0 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col5 (type: boolean), VALUE._col10 (type: boolean), VALUE._col11 (type: boolean), VALUE._col12 (type: boolean), VALUE._col13 (type: boolean), VALUE._col14 (type: boolean), VALUE._col10 (type: boolean)
+          outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18
+          Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select
+  str3,
+  -- Should all be false
+  interval_day_time(str3) != interval_day_time(str3),
+  interval_day_time(str3) >= interval_day_time(str4),
+  interval_day_time(str3) > interval_day_time(str4),
+  interval_day_time(str4) <= interval_day_time(str3),
+  interval_day_time(str4) < interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str3),
+
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+  interval_day_time(str3) >= interval '1 2:3:5' day to second,
+  interval_day_time(str3) > interval '1 2:3:5' day to second,
+  interval_day_time(str4) <= interval '1 2:3:4' day to second,
+  interval_day_time(str4) < interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+
+  interval '1 2:3:4' day to second != interval_day_time(str3),
+  interval '1 2:3:4' day to second >= interval_day_time(str4),
+  interval '1 2:3:4' day to second > interval_day_time(str4),
+  interval '1 2:3:5' day to second <= interval_day_time(str3),
+  interval '1 2:3:5' day to second < interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str3)
+from vector_interval_2 order by str3
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select
+  str3,
+  -- Should all be false
+  interval_day_time(str3) != interval_day_time(str3),
+  interval_day_time(str3) >= interval_day_time(str4),
+  interval_day_time(str3) > interval_day_time(str4),
+  interval_day_time(str4) <= interval_day_time(str3),
+  interval_day_time(str4) < interval_day_time(str3),
+  interval_day_time(str3) != interval_day_time(str3),
+
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+  interval_day_time(str3) >= interval '1 2:3:5' day to second,
+  interval_day_time(str3) > interval '1 2:3:5' day to second,
+  interval_day_time(str4) <= interval '1 2:3:4' day to second,
+  interval_day_time(str4) < interval '1 2:3:4' day to second,
+  interval_day_time(str3) != interval '1 2:3:4' day to second,
+
+  interval '1 2:3:4' day to second != interval_day_time(str3),
+  interval '1 2:3:4' day to second >= interval_day_time(str4),
+  interval '1 2:3:4' day to second > interval_day_time(str4),
+  interval '1 2:3:5' day to second <= interval_day_time(str3),
+  interval '1 2:3:5' day to second < interval_day_time(str3),
+  interval '1 2:3:4' day to second != interval_day_time(str3)
+from vector_interval_2 order by str3
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL
+1 2:3:4	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false	false
+PREHOOK: query: -- interval expressions in predicates
+explain
+select ts from vector_interval_2
+where
+  interval_year_month(str1) = interval_year_month(str1)
+  and interval_year_month(str1) != interval_year_month(str2)
+  and interval_year_month(str1) <= interval_year_month(str2)
+  and interval_year_month(str1) < interval_year_month(str2)
+  and interval_year_month(str2) >= interval_year_month(str1)
+  and interval_year_month(str2) > interval_year_month(str1)
+
+  and interval_year_month(str1) = interval '1-2' year to month
+  and interval_year_month(str1) != interval '1-3' year to month
+  and interval_year_month(str1) <= interval '1-3' year to month
+  and interval_year_month(str1) < interval '1-3' year to month
+  and interval_year_month(str2) >= interval '1-2' year to month
+  and interval_year_month(str2) > interval '1-2' year to month
+
+  and interval '1-2' year to month = interval_year_month(str1)
+  and interval '1-2' year to month != interval_year_month(str2)
+  and interval '1-2' year to month <= interval_year_month(str2)
+  and interval '1-2' year to month < interval_year_month(str2)
+  and interval '1-3' year to month >= interval_year_month(str1)
+  and interval '1-3' year to month > interval_year_month(str1)
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: -- interval expressions in predicates
+explain
+select ts from vector_interval_2
+where
+  interval_year_month(str1) = interval_year_month(str1)
+  and interval_year_month(str1) != interval_year_month(str2)
+  and interval_year_month(str1) <= interval_year_month(str2)
+  and interval_year_month(str1) < interval_year_month(str2)
+  and interval_year_month(str2) >= interval_year_month(str1)
+  and interval_year_month(str2) > interval_year_month(str1)
+
+  and interval_year_month(str1) = interval '1-2' year to month
+  and interval_year_month(str1) != interval '1-3' year to month
+  and interval_year_month(str1) <= interval '1-3' year to month
+  and interval_year_month(str1) < interval '1-3' year to month
+  and interval_year_month(str2) >= interval '1-2' year to month
+  and interval_year_month(str2) > interval '1-2' year to month
+
+  and interval '1-2' year to month = interval_year_month(str1)
+  and interval '1-2' year to month != interval_year_month(str2)
+  and interval '1-2' year to month <= interval_year_month(str2)
+  and interval '1-2' year to month < interval_year_month(str2)
+  and interval '1-3' year to month >= interval_year_month(str1)
+  and interval '1-3' year to month > interval_year_month(str1)
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((((((CAST( str1 AS INTERVAL YEAR TO MONTH) = CAST( str1 AS INTERVAL YEAR TO MONTH)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <> CAST( str2 AS INTERVAL YEAR TO MONTH))) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <= CAST( str2 AS INTERVAL YEAR TO MONTH))) and (CAST( str1 AS INTERVAL YEAR TO MONTH) < CAST( str2 AS INTERVAL YEAR TO MONTH))) and (CAST( str2 AS INTERVAL YEAR TO MONTH) >= CAST( str1 AS INTERVAL YEAR TO MONTH))) and (CAST( str2 AS INTERVAL YEAR TO MONTH) > CAST( str1 AS INTERVAL YEAR TO MONTH))) and (CAST( str1 AS INTERVAL YEAR TO MONTH) = 1-2)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <> 1-3)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <= 1-3)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) < 1-3)) and (CAST( str2 AS INTERVAL YEAR TO MONTH) >= 1-2)) and (CAST( str2 AS INTERVAL YEAR TO MONTH) > 1-2)) and (1-2 = CAST( str1 AS INTERVAL YEAR TO MONTH))) and (1-2 <> CAST( str2 AS INTERVAL YEAR TO MONTH))) and (1-2 <= CAST( str2 AS INTERVAL 
 YEAR TO MONTH))) and (1-2 < CAST( str2 AS INTERVAL YEAR TO MONTH))) and (1-3 >= CAST( str1 AS INTERVAL YEAR TO MONTH))) and (1-3 > CAST( str1 AS INTERVAL YEAR TO MONTH))) (type: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  interval_year_month(str1) = interval_year_month(str1)
+  and interval_year_month(str1) != interval_year_month(str2)
+  and interval_year_month(str1) <= interval_year_month(str2)
+  and interval_year_month(str1) < interval_year_month(str2)
+  and interval_year_month(str2) >= interval_year_month(str1)
+  and interval_year_month(str2) > interval_year_month(str1)
+
+  and interval_year_month(str1) = interval '1-2' year to month
+  and interval_year_month(str1) != interval '1-3' year to month
+  and interval_year_month(str1) <= interval '1-3' year to month
+  and interval_year_month(str1) < interval '1-3' year to month
+  and interval_year_month(str2) >= interval '1-2' year to month
+  and interval_year_month(str2) > interval '1-2' year to month
+
+  and interval '1-2' year to month = interval_year_month(str1)
+  and interval '1-2' year to month != interval_year_month(str2)
+  and interval '1-2' year to month <= interval_year_month(str2)
+  and interval '1-2' year to month < interval_year_month(str2)
+  and interval '1-3' year to month >= interval_year_month(str1)
+  and interval '1-3' year to month > interval_year_month(str1)
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  interval_year_month(str1) = interval_year_month(str1)
+  and interval_year_month(str1) != interval_year_month(str2)
+  and interval_year_month(str1) <= interval_year_month(str2)
+  and interval_year_month(str1) < interval_year_month(str2)
+  and interval_year_month(str2) >= interval_year_month(str1)
+  and interval_year_month(str2) > interval_year_month(str1)
+
+  and interval_year_month(str1) = interval '1-2' year to month
+  and interval_year_month(str1) != interval '1-3' year to month
+  and interval_year_month(str1) <= interval '1-3' year to month
+  and interval_year_month(str1) < interval '1-3' year to month
+  and interval_year_month(str2) >= interval '1-2' year to month
+  and interval_year_month(str2) > interval '1-2' year to month
+
+  and interval '1-2' year to month = interval_year_month(str1)
+  and interval '1-2' year to month != interval_year_month(str2)
+  and interval '1-2' year to month <= interval_year_month(str2)
+  and interval '1-2' year to month < interval_year_month(str2)
+  and interval '1-3' year to month >= interval_year_month(str1)
+  and interval '1-3' year to month > interval_year_month(str1)
+order by ts
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+2001-01-01 01:02:03
+PREHOOK: query: explain
+select ts from vector_interval_2
+where
+  interval_day_time(str3) = interval_day_time(str3)
+  and interval_day_time(str3) != interval_day_time(str4)
+  and interval_day_time(str3) <= interval_day_time(str4)
+  and interval_day_time(str3) < interval_day_time(str4)
+  and interval_day_time(str4) >= interval_day_time(str3)
+  and interval_day_time(str4) > interval_day_time(str3)
+
+  and interval_day_time(str3) = interval '1 2:3:4' day to second
+  and interval_day_time(str3) != interval '1 2:3:5' day to second
+  and interval_day_time(str3) <= interval '1 2:3:5' day to second
+  and interval_day_time(str3) < interval '1 2:3:5' day to second
+  and interval_day_time(str4) >= interval '1 2:3:4' day to second
+  and interval_day_time(str4) > interval '1 2:3:4' day to second
+
+  and interval '1 2:3:4' day to second = interval_day_time(str3)
+  and interval '1 2:3:4' day to second != interval_day_time(str4)
+  and interval '1 2:3:4' day to second <= interval_day_time(str4)
+  and interval '1 2:3:4' day to second < interval_day_time(str4)
+  and interval '1 2:3:5' day to second >= interval_day_time(str3)
+  and interval '1 2:3:5' day to second > interval_day_time(str3)
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select ts from vector_interval_2
+where
+  interval_day_time(str3) = interval_day_time(str3)
+  and interval_day_time(str3) != interval_day_time(str4)
+  and interval_day_time(str3) <= interval_day_time(str4)
+  and interval_day_time(str3) < interval_day_time(str4)
+  and interval_day_time(str4) >= interval_day_time(str3)
+  and interval_day_time(str4) > interval_day_time(str3)
+
+  and interval_day_time(str3) = interval '1 2:3:4' day to second
+  and interval_day_time(str3) != interval '1 2:3:5' day to second
+  and interval_day_time(str3) <= interval '1 2:3:5' day to second
+  and interval_day_time(str3) < interval '1 2:3:5' day to second
+  and interval_day_time(str4) >= interval '1 2:3:4' day to second
+  and interval_day_time(str4) > interval '1 2:3:4' day to second
+
+  and interval '1 2:3:4' day to second = interval_day_time(str3)
+  and interval '1 2:3:4' day to second != interval_day_time(str4)
+  and interval '1 2:3:4' day to second <= interval_day_time(str4)
+  and interval '1 2:3:4' day to second < interval_day_time(str4)
+  and interval '1 2:3:5' day to second >= interval_day_time(str3)
+  and interval '1 2:3:5' day to second > interval_day_time(str3)
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((((((CAST( str3 AS INTERVAL DAY TO SECOND) = CAST( str3 AS INTERVAL DAY TO SECOND)) and (CAST( str3 AS INTERVAL DAY TO SECOND) <> CAST( str4 AS INTERVAL DAY TO SECOND))) and (CAST( str3 AS INTERVAL DAY TO SECOND) <= CAST( str4 AS INTERVAL DAY TO SECOND))) and (CAST( str3 AS INTERVAL DAY TO SECOND) < CAST( str4 AS INTERVAL DAY TO SECOND))) and (CAST( str4 AS INTERVAL DAY TO SECOND) >= CAST( str3 AS INTERVAL DAY TO SECOND))) and (CAST( str4 AS INTERVAL DAY TO SECOND) > CAST( str3 AS INTERVAL DAY TO SECOND))) and (CAST( str3 AS INTERVAL DAY TO SECOND) = 1 02:03:04.000000000)) and (CAST( str3 AS INTERVAL DAY TO SECOND) <> 1 02:03:05.000000000)) and (CAST( str3 AS INTERVAL DAY TO SECOND) <= 1 02:03:05.000000000)) and (CAST( str3 AS INTERVAL DAY TO SECOND) < 1 02:03:05.000000000)) and (CAST( str4 AS INTERVAL DAY TO SECOND) >= 1 02:03:04.000000000)) and (CAST( str4 AS INTERVAL DAY TO SECOND) > 1 02:03:04.000000000)) and (1 02:03:04.000000000 = CAST( st
 r3 AS INTERVAL DAY TO SECOND))) and (1 02:03:04.000000000 <> CAST( str4 AS INTERVAL DAY TO SECOND))) and (1 02:03:04.000000000 <= CAST( str4 AS INTERVAL DAY TO SECOND))) and (1 02:03:04.000000000 < CAST( str4 AS INTERVAL DAY TO SECOND))) and (1 02:03:05.000000000 >= CAST( str3 AS INTERVAL DAY TO SECOND))) and (1 02:03:05.000000000 > CAST( str3 AS INTERVAL DAY TO SECOND))) (type: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  interval_day_time(str3) = interval_day_time(str3)
+  and interval_day_time(str3) != interval_day_time(str4)
+  and interval_day_time(str3) <= interval_day_time(str4)
+  and interval_day_time(str3) < interval_day_time(str4)
+  and interval_day_time(str4) >= interval_day_time(str3)
+  and interval_day_time(str4) > interval_day_time(str3)
+
+  and interval_day_time(str3) = interval '1 2:3:4' day to second
+  and interval_day_time(str3) != interval '1 2:3:5' day to second
+  and interval_day_time(str3) <= interval '1 2:3:5' day to second
+  and interval_day_time(str3) < interval '1 2:3:5' day to second
+  and interval_day_time(str4) >= interval '1 2:3:4' day to second
+  and interval_day_time(str4) > interval '1 2:3:4' day to second
+
+  and interval '1 2:3:4' day to second = interval_day_time(str3)
+  and interval '1 2:3:4' day to second != interval_day_time(str4)
+  and interval '1 2:3:4' day to second <= interval_day_time(str4)
+  and interval '1 2:3:4' day to second < interval_day_time(str4)
+  and interval '1 2:3:5' day to second >= interval_day_time(str3)
+  and interval '1 2:3:5' day to second > interval_day_time(str3)
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  interval_day_time(str3) = interval_day_time(str3)
+  and interval_day_time(str3) != interval_day_time(str4)
+  and interval_day_time(str3) <= interval_day_time(str4)
+  and interval_day_time(str3) < interval_day_time(str4)
+  and interval_day_time(str4) >= interval_day_time(str3)
+  and interval_day_time(str4) > interval_day_time(str3)
+
+  and interval_day_time(str3) = interval '1 2:3:4' day to second
+  and interval_day_time(str3) != interval '1 2:3:5' day to second
+  and interval_day_time(str3) <= interval '1 2:3:5' day to second
+  and interval_day_time(str3) < interval '1 2:3:5' day to second
+  and interval_day_time(str4) >= interval '1 2:3:4' day to second
+  and interval_day_time(str4) > interval '1 2:3:4' day to second
+
+  and interval '1 2:3:4' day to second = interval_day_time(str3)
+  and interval '1 2:3:4' day to second != interval_day_time(str4)
+  and interval '1 2:3:4' day to second <= interval_day_time(str4)
+  and interval '1 2:3:4' day to second < interval_day_time(str4)
+  and interval '1 2:3:5' day to second >= interval_day_time(str3)
+  and interval '1 2:3:5' day to second > interval_day_time(str3)
+order by ts
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+2001-01-01 01:02:03
+PREHOOK: query: explain
+select ts from vector_interval_2
+where
+  date '2002-03-01' = dt + interval_year_month(str1)
+  and date '2002-03-01' <= dt + interval_year_month(str1)
+  and date '2002-03-01' >= dt + interval_year_month(str1)
+  and dt + interval_year_month(str1) = date '2002-03-01'
+  and dt + interval_year_month(str1) <= date '2002-03-01'
+  and dt + interval_year_month(str1) >= date '2002-03-01'
+  and dt != dt + interval_year_month(str1)
+
+  and date '2002-03-01' = dt + interval '1-2' year to month
+  and date '2002-03-01' <= dt + interval '1-2' year to month
+  and date '2002-03-01' >= dt + interval '1-2' year to month
+  and dt + interval '1-2' year to month = date '2002-03-01'
+  and dt + interval '1-2' year to month <= date '2002-03-01'
+  and dt + interval '1-2' year to month >= date '2002-03-01'
+  and dt != dt + interval '1-2' year to month
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select ts from vector_interval_2
+where
+  date '2002-03-01' = dt + interval_year_month(str1)
+  and date '2002-03-01' <= dt + interval_year_month(str1)
+  and date '2002-03-01' >= dt + interval_year_month(str1)
+  and dt + interval_year_month(str1) = date '2002-03-01'
+  and dt + interval_year_month(str1) <= date '2002-03-01'
+  and dt + interval_year_month(str1) >= date '2002-03-01'
+  and dt != dt + interval_year_month(str1)
+
+  and date '2002-03-01' = dt + interval '1-2' year to month
+  and date '2002-03-01' <= dt + interval '1-2' year to month
+  and date '2002-03-01' >= dt + interval '1-2' year to month
+  and dt + interval '1-2' year to month = date '2002-03-01'
+  and dt + interval '1-2' year to month <= date '2002-03-01'
+  and dt + interval '1-2' year to month >= date '2002-03-01'
+  and dt != dt + interval '1-2' year to month
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((2002-03-01 = (dt + CAST( str1 AS INTERVAL YEAR TO MONTH))) and (2002-03-01 <= (dt + CAST( str1 AS INTERVAL YEAR TO MONTH)))) and (2002-03-01 >= (dt + CAST( str1 AS INTERVAL YEAR TO MONTH)))) and ((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) = 2002-03-01)) and ((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) <= 2002-03-01)) and ((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) >= 2002-03-01)) and (dt <> (dt + CAST( str1 AS INTERVAL YEAR TO MONTH)))) and (2002-03-01 = (dt + 1-2))) and (2002-03-01 <= (dt + 1-2))) and (2002-03-01 >= (dt + 1-2))) and ((dt + 1-2) = 2002-03-01)) and ((dt + 1-2) <= 2002-03-01)) and ((dt + 1-2) >= 2002-03-01)) and (dt <> (dt + 1-2))) (type: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  date '2002-03-01' = dt + interval_year_month(str1)
+  and date '2002-03-01' <= dt + interval_year_month(str1)
+  and date '2002-03-01' >= dt + interval_year_month(str1)
+  and dt + interval_year_month(str1) = date '2002-03-01'
+  and dt + interval_year_month(str1) <= date '2002-03-01'
+  and dt + interval_year_month(str1) >= date '2002-03-01'
+  and dt != dt + interval_year_month(str1)
+
+  and date '2002-03-01' = dt + interval '1-2' year to month
+  and date '2002-03-01' <= dt + interval '1-2' year to month
+  and date '2002-03-01' >= dt + interval '1-2' year to month
+  and dt + interval '1-2' year to month = date '2002-03-01'
+  and dt + interval '1-2' year to month <= date '2002-03-01'
+  and dt + interval '1-2' year to month >= date '2002-03-01'
+  and dt != dt + interval '1-2' year to month
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  date '2002-03-01' = dt + interval_year_month(str1)
+  and date '2002-03-01' <= dt + interval_year_month(str1)
+  and date '2002-03-01' >= dt + interval_year_month(str1)
+  and dt + interval_year_month(str1) = date '2002-03-01'
+  and dt + interval_year_month(str1) <= date '2002-03-01'
+  and dt + interval_year_month(str1) >= date '2002-03-01'
+  and dt != dt + interval_year_month(str1)
+
+  and date '2002-03-01' = dt + interval '1-2' year to month
+  and date '2002-03-01' <= dt + interval '1-2' year to month
+  and date '2002-03-01' >= dt + interval '1-2' year to month
+  and dt + interval '1-2' year to month = date '2002-03-01'
+  and dt + interval '1-2' year to month <= date '2002-03-01'
+  and dt + interval '1-2' year to month >= date '2002-03-01'
+  and dt != dt + interval '1-2' year to month
+order by ts
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+2001-01-01 01:02:03
+PREHOOK: query: explain
+select ts from vector_interval_2
+where
+  timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
+  and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
+
+  and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
+  and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
+  and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
+
+  and ts = ts + interval '0' year
+  and ts != ts + interval '1' year
+  and ts <= ts + interval '1' year
+  and ts < ts + interval '1' year
+  and ts >= ts - interval '1' year
+  and ts > ts - interval '1' year
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select ts from vector_interval_2
+where
+  timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
+  and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
+
+  and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
+  and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
+  and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
+
+  and ts = ts + interval '0' year
+  and ts != ts + interval '1' year
+  and ts <= ts + interval '1' year
+  and ts < ts + interval '1' year
+  and ts >= ts - interval '1' year
+  and ts > ts - interval '1' year
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((((((2002-03-01 01:02:03.0 = (ts + 1-2)) and (2002-03-01 01:02:03.0 <= (ts + 1-2))) and (2002-03-01 01:02:03.0 >= (ts + 1-2))) and (2002-04-01 01:02:03.0 <> (ts + 1-2))) and (2002-02-01 01:02:03.0 < (ts + 1-2))) and (2002-04-01 01:02:03.0 > (ts + 1-2))) and ((ts + 1-2) = 2002-03-01 01:02:03.0)) and ((ts + 1-2) >= 2002-03-01 01:02:03.0)) and ((ts + 1-2) <= 2002-03-01 01:02:03.0)) and ((ts + 1-2) <> 2002-04-01 01:02:03.0)) and ((ts + 1-2) > 2002-02-01 01:02:03.0)) and ((ts + 1-2) < 2002-04-01 01:02:03.0)) and (ts = (ts + 0-0))) and (ts <> (ts + 1-0))) and (ts <= (ts + 1-0))) and (ts < (ts + 1-0))) and (ts >= (ts - 1-0))) and (ts > (ts - 1-0))) (type: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
+  and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
+
+  and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
+  and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
+  and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
+
+  and ts = ts + interval '0' year
+  and ts != ts + interval '1' year
+  and ts <= ts + interval '1' year
+  and ts < ts + interval '1' year
+  and ts >= ts - interval '1' year
+  and ts > ts - interval '1' year
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
+  and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
+  and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
+  and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
+
+  and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
+  and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
+  and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
+  and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
+
+  and ts = ts + interval '0' year
+  and ts != ts + interval '1' year
+  and ts <= ts + interval '1' year
+  and ts < ts + interval '1' year
+  and ts >= ts - interval '1' year
+  and ts > ts - interval '1' year
+order by ts
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+2001-01-01 01:02:03
+PREHOOK: query: -- day to second expressions in predicate
+explain
+select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
+
+  and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
+
+  and ts = dt + interval '0 1:2:3' day to second
+  and ts != dt + interval '0 1:2:4' day to second
+  and ts <= dt + interval '0 1:2:3' day to second
+  and ts < dt + interval '0 1:2:4' day to second
+  and ts >= dt - interval '0 1:2:3' day to second
+  and ts > dt - interval '0 1:2:4' day to second
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: -- day to second expressions in predicate
+explain
+select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
+
+  and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
+
+  and ts = dt + interval '0 1:2:3' day to second
+  and ts != dt + interval '0 1:2:4' day to second
+  and ts <= dt + interval '0 1:2:3' day to second
+  and ts < dt + interval '0 1:2:4' day to second
+  and ts >= dt - interval '0 1:2:3' day to second
+  and ts > dt - interval '0 1:2:4' day to second
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((((((2001-01-01 01:02:03.0 = (dt + 0 01:02:03.000000000)) and (2001-01-01 01:02:03.0 <> (dt + 0 01:02:04.000000000))) and (2001-01-01 01:02:03.0 <= (dt + 0 01:02:03.000000000))) and (2001-01-01 01:02:03.0 < (dt + 0 01:02:04.000000000))) and (2001-01-01 01:02:03.0 >= (dt - 0 01:02:03.000000000))) and (2001-01-01 01:02:03.0 > (dt - 0 01:02:04.000000000))) and ((dt + 0 01:02:03.000000000) = 2001-01-01 01:02:03.0)) and ((dt + 0 01:02:04.000000000) <> 2001-01-01 01:02:03.0)) and ((dt + 0 01:02:03.000000000) >= 2001-01-01 01:02:03.0)) and ((dt + 0 01:02:04.000000000) > 2001-01-01 01:02:03.0)) and ((dt - 0 01:02:03.000000000) <= 2001-01-01 01:02:03.0)) and ((dt - 0 01:02:04.000000000) < 2001-01-01 01:02:03.0)) and (ts = (dt + 0 01:02:03.000000000))) and (ts <> (dt + 0 01:02:04.000000000))) and (ts <= (dt + 0 01:02:03.000000000))) and (ts < (dt + 0 01:02:04.000000000))) and (ts >= (dt - 0 01:02:03.000000000))) and (ts > (dt - 0 01:02:04.000000000))) (ty
 pe: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
+
+  and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
+
+  and ts = dt + interval '0 1:2:3' day to second
+  and ts != dt + interval '0 1:2:4' day to second
+  and ts <= dt + interval '0 1:2:3' day to second
+  and ts < dt + interval '0 1:2:4' day to second
+  and ts >= dt - interval '0 1:2:3' day to second
+  and ts > dt - interval '0 1:2:4' day to second
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
+  and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
+  and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
+
+  and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
+  and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
+  and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
+
+  and ts = dt + interval '0 1:2:3' day to second
+  and ts != dt + interval '0 1:2:4' day to second
+  and ts <= dt + interval '0 1:2:3' day to second
+  and ts < dt + interval '0 1:2:4' day to second
+  and ts >= dt - interval '0 1:2:3' day to second
+  and ts > dt - interval '0 1:2:4' day to second
+order by ts
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+2001-01-01 01:02:03
+PREHOOK: query: explain
+select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = ts + interval '0' day
+  and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
+  and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
+
+  and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
+
+  and ts = ts + interval '0' day
+  and ts != ts + interval '1' day
+  and ts <= ts + interval '1' day
+  and ts < ts + interval '1' day
+  and ts >= ts - interval '1' day
+  and ts > ts - interval '1' day
+order by ts
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = ts + interval '0' day
+  and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
+  and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
+
+  and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
+
+  and ts = ts + interval '0' day
+  and ts != ts + interval '1' day
+  and ts <= ts + interval '1' day
+  and ts < ts + interval '1' day
+  and ts >= ts - interval '1' day
+  and ts > ts - interval '1' day
+order by ts
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: vector_interval_2
+            Statistics: Num rows: 2 Data size: 788 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: ((((((((((((((((((2001-01-01 01:02:03.0 = (ts + 0 00:00:00.000000000)) and (2001-01-01 01:02:03.0 <> (ts + 1 00:00:00.000000000))) and (2001-01-01 01:02:03.0 <= (ts + 1 00:00:00.000000000))) and (2001-01-01 01:02:03.0 < (ts + 1 00:00:00.000000000))) and (2001-01-01 01:02:03.0 >= (ts - 1 00:00:00.000000000))) and (2001-01-01 01:02:03.0 > (ts - 1 00:00:00.000000000))) and ((ts + 0 00:00:00.000000000) = 2001-01-01 01:02:03.0)) and ((ts + 1 00:00:00.000000000) <> 2001-01-01 01:02:03.0)) and ((ts + 1 00:00:00.000000000) >= 2001-01-01 01:02:03.0)) and ((ts + 1 00:00:00.000000000) > 2001-01-01 01:02:03.0)) and ((ts - 1 00:00:00.000000000) <= 2001-01-01 01:02:03.0)) and ((ts - 1 00:00:00.000000000) < 2001-01-01 01:02:03.0)) and (ts = (ts + 0 00:00:00.000000000))) and (ts <> (ts + 1 00:00:00.000000000))) and (ts <= (ts + 1 00:00:00.000000000))) and (ts < (ts + 1 00:00:00.000000000))) and (ts >= (ts - 1 00:00:00.000000000))) and (ts > (ts - 1 00:00:00.000000000))) (ty
 pe: boolean)
+              Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+              Select Operator
+                expressions: ts (type: timestamp)
+                outputColumnNames: _col0
+                Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                Reduce Output Operator
+                  key expressions: _col0 (type: timestamp)
+                  sort order: +
+                  Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+      Execution mode: vectorized
+      Reduce Operator Tree:
+        Select Operator
+          expressions: KEY.reducesinkkey0 (type: timestamp)
+          outputColumnNames: _col0
+          Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+          File Output Operator
+            compressed: false
+            Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+            table:
+                input format: org.apache.hadoop.mapred.TextInputFormat
+                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = ts + interval '0' day
+  and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
+  and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
+
+  and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
+
+  and ts = ts + interval '0' day
+  and ts != ts + interval '1' day
+  and ts <= ts + interval '1' day
+  and ts < ts + interval '1' day
+  and ts >= ts - interval '1' day
+  and ts > ts - interval '1' day
+order by ts
+PREHOOK: type: QUERY
+PREHOOK: Input: default@vector_interval_2
+#### A masked pattern was here ####
+POSTHOOK: query: select ts from vector_interval_2
+where
+  timestamp '2001-01-01 01:02:03' = ts + interval '0' day
+  and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
+  and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
+  and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
+
+  and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
+  and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
+  and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
+
+  and ts = ts + interval '0' day
+  and ts != ts + interval '1' day
+  and ts <= ts + interval '1' day
+  and ts < ts + interval '1' day

[... 16 lines stripped ...]


Mime
View raw message