HIVE-18797 : ExprConstNodeDesc's getExprString should put appropriate qualifier with...
[hive.git] / ql / src / test / results / clientpositive / llap / vector_interval_2.q.out
1 PREHOOK: query: drop table if exists vector_interval_2
2 PREHOOK: type: DROPTABLE
3 POSTHOOK: query: drop table if exists vector_interval_2
4 POSTHOOK: type: DROPTABLE
5 PREHOOK: query: create table vector_interval_2 (ts timestamp, dt date, str1 string, str2 string, str3 string, str4 string) stored as orc
6 PREHOOK: type: CREATETABLE
7 PREHOOK: Output: database:default
8 PREHOOK: Output: default@vector_interval_2
9 POSTHOOK: query: create table vector_interval_2 (ts timestamp, dt date, str1 string, str2 string, str3 string, str4 string) stored as orc
10 POSTHOOK: type: CREATETABLE
11 POSTHOOK: Output: database:default
12 POSTHOOK: Output: default@vector_interval_2
13 PREHOOK: query: insert into vector_interval_2
14   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
15 PREHOOK: type: QUERY
16 PREHOOK: Input: default@src
17 PREHOOK: Output: default@vector_interval_2
18 POSTHOOK: query: insert into vector_interval_2
19   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
20 POSTHOOK: type: QUERY
21 POSTHOOK: Input: default@src
22 POSTHOOK: Output: default@vector_interval_2
23 POSTHOOK: Lineage: vector_interval_2.dt SIMPLE []
24 POSTHOOK: Lineage: vector_interval_2.str1 SIMPLE []
25 POSTHOOK: Lineage: vector_interval_2.str2 SIMPLE []
26 POSTHOOK: Lineage: vector_interval_2.str3 SIMPLE []
27 POSTHOOK: Lineage: vector_interval_2.str4 SIMPLE []
28 POSTHOOK: Lineage: vector_interval_2.ts SIMPLE []
29 PREHOOK: query: insert into vector_interval_2
30   select null, null, null, null, null, null from src limit 1
31 PREHOOK: type: QUERY
32 PREHOOK: Input: default@src
33 PREHOOK: Output: default@vector_interval_2
34 POSTHOOK: query: insert into vector_interval_2
35   select null, null, null, null, null, null from src limit 1
36 POSTHOOK: type: QUERY
37 POSTHOOK: Input: default@src
38 POSTHOOK: Output: default@vector_interval_2
39 POSTHOOK: Lineage: vector_interval_2.dt EXPRESSION []
40 POSTHOOK: Lineage: vector_interval_2.str1 EXPRESSION []
41 POSTHOOK: Lineage: vector_interval_2.str2 EXPRESSION []
42 POSTHOOK: Lineage: vector_interval_2.str3 EXPRESSION []
43 POSTHOOK: Lineage: vector_interval_2.str4 EXPRESSION []
44 POSTHOOK: Lineage: vector_interval_2.ts EXPRESSION []
45 PREHOOK: query: explain vectorization expression
46 select
47   str1,
48   -- Should all be true
49   interval_year_month(str1) = interval_year_month(str1),
50   interval_year_month(str1) <= interval_year_month(str1),
51   interval_year_month(str1) <= interval_year_month(str2),
52   interval_year_month(str1) < interval_year_month(str2),
53   interval_year_month(str1) >= interval_year_month(str1),
54   interval_year_month(str2) >= interval_year_month(str1),
55   interval_year_month(str2) > interval_year_month(str1),
56   interval_year_month(str1) != interval_year_month(str2),
57
58   interval_year_month(str1) = interval '1-2' year to month,
59   interval_year_month(str1) <= interval '1-2' year to month,
60   interval_year_month(str1) <= interval '1-3' year to month,
61   interval_year_month(str1) < interval '1-3' year to month,
62   interval_year_month(str1) >= interval '1-2' year to month,
63   interval_year_month(str2) >= interval '1-2' year to month,
64   interval_year_month(str2) > interval '1-2' year to month,
65   interval_year_month(str1) != interval '1-3' year to month,
66
67   interval '1-2' year to month = interval_year_month(str1),
68   interval '1-2' year to month <= interval_year_month(str1),
69   interval '1-2' year to month <= interval_year_month(str2),
70   interval '1-2' year to month < interval_year_month(str2),
71   interval '1-2' year to month >= interval_year_month(str1),
72   interval '1-3' year to month >= interval_year_month(str1),
73   interval '1-3' year to month > interval_year_month(str1),
74   interval '1-2' year to month != interval_year_month(str2)
75 from vector_interval_2 order by str1
76 PREHOOK: type: QUERY
77 POSTHOOK: query: explain vectorization expression
78 select
79   str1,
80   -- Should all be true
81   interval_year_month(str1) = interval_year_month(str1),
82   interval_year_month(str1) <= interval_year_month(str1),
83   interval_year_month(str1) <= interval_year_month(str2),
84   interval_year_month(str1) < interval_year_month(str2),
85   interval_year_month(str1) >= interval_year_month(str1),
86   interval_year_month(str2) >= interval_year_month(str1),
87   interval_year_month(str2) > interval_year_month(str1),
88   interval_year_month(str1) != interval_year_month(str2),
89
90   interval_year_month(str1) = interval '1-2' year to month,
91   interval_year_month(str1) <= interval '1-2' year to month,
92   interval_year_month(str1) <= interval '1-3' year to month,
93   interval_year_month(str1) < interval '1-3' year to month,
94   interval_year_month(str1) >= interval '1-2' year to month,
95   interval_year_month(str2) >= interval '1-2' year to month,
96   interval_year_month(str2) > interval '1-2' year to month,
97   interval_year_month(str1) != interval '1-3' year to month,
98
99   interval '1-2' year to month = interval_year_month(str1),
100   interval '1-2' year to month <= interval_year_month(str1),
101   interval '1-2' year to month <= interval_year_month(str2),
102   interval '1-2' year to month < interval_year_month(str2),
103   interval '1-2' year to month >= interval_year_month(str1),
104   interval '1-3' year to month >= interval_year_month(str1),
105   interval '1-3' year to month > interval_year_month(str1),
106   interval '1-2' year to month != interval_year_month(str2)
107 from vector_interval_2 order by str1
108 POSTHOOK: type: QUERY
109 PLAN VECTORIZATION:
110   enabled: true
111   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
112
113 STAGE DEPENDENCIES:
114   Stage-1 is a root stage
115   Stage-0 depends on stages: Stage-1
116
117 STAGE PLANS:
118   Stage: Stage-1
119     Tez
120 #### A masked pattern was here ####
121       Edges:
122         Reducer 2 <- Map 1 (SIMPLE_EDGE)
123 #### A masked pattern was here ####
124       Vertices:
125         Map 1 
126             Map Operator Tree:
127                 TableScan
128                   alias: vector_interval_2
129                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
130                   TableScan Vectorization:
131                       native: true
132                   Select Operator
133                     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) = INTERVAL'1-2') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <= INTERVAL'1-2') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <= INTERVAL'1-3') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) < INTERVAL'1-3') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= INTERVAL'1-2') (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) >= INTERVAL'1-2') (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) > INTERVAL'1-2') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) <> INTERVAL'1-3') (type: boolean), (INTERVAL'1-2' = CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' <= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' < CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-3' >= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-3' > CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' <> CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean)
134                     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
135                     Select Vectorization:
136                         className: VectorSelectOperator
137                         native: true
138                         projectedOutputColumnNums: [2, 9, 10, 11, 12, 13, 14, 15, 16, 8, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31]
139                         selectExpressions: LongColEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 9:boolean, LongColLessEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 10:boolean, LongColLessEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month) -> 11:boolean, LongColLessLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month) -> 12:boolean, LongColGreaterEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 13:boolean, LongColGreaterEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 14:boolean, LongColGreaterLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 15:boolean, LongColNotEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month) -> 16:boolean, IntervalYearMonthColEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:boolean, IntervalYearMonthColLessEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 17:boolean, IntervalYearMonthColLessEqualIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 18:boolean, IntervalYearMonthColLessIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 19:boolean, IntervalYearMonthColGreaterEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 20:boolean, IntervalYearMonthColGreaterEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 21:boolean, IntervalYearMonthColGreaterIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 22:boolean, IntervalYearMonthColNotEqualIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 23:boolean, IntervalYearMonthScalarEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 24:boolean, IntervalYearMonthScalarLessEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 25:boolean, IntervalYearMonthScalarLessEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 26:boolean, IntervalYearMonthScalarLessIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 27:boolean, IntervalYearMonthScalarGreaterEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 28:boolean, IntervalYearMonthScalarGreaterEqualIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 29:boolean, IntervalYearMonthScalarGreaterIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 30:boolean, IntervalYearMonthScalarNotEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 31:boolean
140                     Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
141                     Reduce Output Operator
142                       key expressions: _col0 (type: string)
143                       sort order: +
144                       Reduce Sink Vectorization:
145                           className: VectorReduceSinkObjectHashOperator
146                           native: true
147                           nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
148                       Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
149                       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)
150             Execution mode: vectorized, llap
151             LLAP IO: all inputs
152             Map Vectorization:
153                 enabled: true
154                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
155                 inputFormatFeatureSupport: []
156                 featureSupportInUse: []
157                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
158                 allNative: true
159                 usesVectorUDFAdaptor: false
160                 vectorized: true
161         Reducer 2 
162             Execution mode: vectorized, llap
163             Reduce Vectorization:
164                 enabled: true
165                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
166                 allNative: false
167                 usesVectorUDFAdaptor: false
168                 vectorized: true
169             Reduce Operator Tree:
170               Select Operator
171                 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)
172                 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
173                 Select Vectorization:
174                     className: VectorSelectOperator
175                     native: true
176                     projectedOutputColumnNums: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
177                 Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
178                 File Output Operator
179                   compressed: false
180                   File Sink Vectorization:
181                       className: VectorFileSinkOperator
182                       native: false
183                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
184                   table:
185                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
186                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
187                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
188
189   Stage: Stage-0
190     Fetch Operator
191       limit: -1
192       Processor Tree:
193         ListSink
194
195 PREHOOK: query: select
196   str1,
197   -- Should all be true
198   interval_year_month(str1) = interval_year_month(str1),
199   interval_year_month(str1) <= interval_year_month(str1),
200   interval_year_month(str1) <= interval_year_month(str2),
201   interval_year_month(str1) < interval_year_month(str2),
202   interval_year_month(str1) >= interval_year_month(str1),
203   interval_year_month(str2) >= interval_year_month(str1),
204   interval_year_month(str2) > interval_year_month(str1),
205   interval_year_month(str1) != interval_year_month(str2),
206
207   interval_year_month(str1) = interval '1-2' year to month,
208   interval_year_month(str1) <= interval '1-2' year to month,
209   interval_year_month(str1) <= interval '1-3' year to month,
210   interval_year_month(str1) < interval '1-3' year to month,
211   interval_year_month(str1) >= interval '1-2' year to month,
212   interval_year_month(str2) >= interval '1-2' year to month,
213   interval_year_month(str2) > interval '1-2' year to month,
214   interval_year_month(str1) != interval '1-3' year to month,
215
216   interval '1-2' year to month = interval_year_month(str1),
217   interval '1-2' year to month <= interval_year_month(str1),
218   interval '1-2' year to month <= interval_year_month(str2),
219   interval '1-2' year to month < interval_year_month(str2),
220   interval '1-2' year to month >= interval_year_month(str1),
221   interval '1-3' year to month >= interval_year_month(str1),
222   interval '1-3' year to month > interval_year_month(str1),
223   interval '1-2' year to month != interval_year_month(str2)
224 from vector_interval_2 order by str1
225 PREHOOK: type: QUERY
226 PREHOOK: Input: default@vector_interval_2
227 #### A masked pattern was here ####
228 POSTHOOK: query: select
229   str1,
230   -- Should all be true
231   interval_year_month(str1) = interval_year_month(str1),
232   interval_year_month(str1) <= interval_year_month(str1),
233   interval_year_month(str1) <= interval_year_month(str2),
234   interval_year_month(str1) < interval_year_month(str2),
235   interval_year_month(str1) >= interval_year_month(str1),
236   interval_year_month(str2) >= interval_year_month(str1),
237   interval_year_month(str2) > interval_year_month(str1),
238   interval_year_month(str1) != interval_year_month(str2),
239
240   interval_year_month(str1) = interval '1-2' year to month,
241   interval_year_month(str1) <= interval '1-2' year to month,
242   interval_year_month(str1) <= interval '1-3' year to month,
243   interval_year_month(str1) < interval '1-3' year to month,
244   interval_year_month(str1) >= interval '1-2' year to month,
245   interval_year_month(str2) >= interval '1-2' year to month,
246   interval_year_month(str2) > interval '1-2' year to month,
247   interval_year_month(str1) != interval '1-3' year to month,
248
249   interval '1-2' year to month = interval_year_month(str1),
250   interval '1-2' year to month <= interval_year_month(str1),
251   interval '1-2' year to month <= interval_year_month(str2),
252   interval '1-2' year to month < interval_year_month(str2),
253   interval '1-2' year to month >= interval_year_month(str1),
254   interval '1-3' year to month >= interval_year_month(str1),
255   interval '1-3' year to month > interval_year_month(str1),
256   interval '1-2' year to month != interval_year_month(str2)
257 from vector_interval_2 order by str1
258 POSTHOOK: type: QUERY
259 POSTHOOK: Input: default@vector_interval_2
260 #### A masked pattern was here ####
261 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
262 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
263 PREHOOK: query: explain vectorization expression
264 select
265   str1,
266   -- Should all be false
267   interval_year_month(str1) != interval_year_month(str1),
268   interval_year_month(str1) >= interval_year_month(str2),
269   interval_year_month(str1) > interval_year_month(str2),
270   interval_year_month(str2) <= interval_year_month(str1),
271   interval_year_month(str2) < interval_year_month(str1),
272   interval_year_month(str1) != interval_year_month(str1),
273
274   interval_year_month(str1) != interval '1-2' year to month,
275   interval_year_month(str1) >= interval '1-3' year to month,
276   interval_year_month(str1) > interval '1-3' year to month,
277   interval_year_month(str2) <= interval '1-2' year to month,
278   interval_year_month(str2) < interval '1-2' year to month,
279   interval_year_month(str1) != interval '1-2' year to month,
280
281   interval '1-2' year to month != interval_year_month(str1),
282   interval '1-2' year to month >= interval_year_month(str2),
283   interval '1-2' year to month > interval_year_month(str2),
284   interval '1-3' year to month <= interval_year_month(str1),
285   interval '1-3' year to month < interval_year_month(str1),
286   interval '1-2' year to month != interval_year_month(str1)
287 from vector_interval_2 order by str1
288 PREHOOK: type: QUERY
289 POSTHOOK: query: explain vectorization expression
290 select
291   str1,
292   -- Should all be false
293   interval_year_month(str1) != interval_year_month(str1),
294   interval_year_month(str1) >= interval_year_month(str2),
295   interval_year_month(str1) > interval_year_month(str2),
296   interval_year_month(str2) <= interval_year_month(str1),
297   interval_year_month(str2) < interval_year_month(str1),
298   interval_year_month(str1) != interval_year_month(str1),
299
300   interval_year_month(str1) != interval '1-2' year to month,
301   interval_year_month(str1) >= interval '1-3' year to month,
302   interval_year_month(str1) > interval '1-3' year to month,
303   interval_year_month(str2) <= interval '1-2' year to month,
304   interval_year_month(str2) < interval '1-2' year to month,
305   interval_year_month(str1) != interval '1-2' year to month,
306
307   interval '1-2' year to month != interval_year_month(str1),
308   interval '1-2' year to month >= interval_year_month(str2),
309   interval '1-2' year to month > interval_year_month(str2),
310   interval '1-3' year to month <= interval_year_month(str1),
311   interval '1-3' year to month < interval_year_month(str1),
312   interval '1-2' year to month != interval_year_month(str1)
313 from vector_interval_2 order by str1
314 POSTHOOK: type: QUERY
315 PLAN VECTORIZATION:
316   enabled: true
317   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
318
319 STAGE DEPENDENCIES:
320   Stage-1 is a root stage
321   Stage-0 depends on stages: Stage-1
322
323 STAGE PLANS:
324   Stage: Stage-1
325     Tez
326 #### A masked pattern was here ####
327       Edges:
328         Reducer 2 <- Map 1 (SIMPLE_EDGE)
329 #### A masked pattern was here ####
330       Vertices:
331         Map 1 
332             Map Operator Tree:
333                 TableScan
334                   alias: vector_interval_2
335                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
336                   TableScan Vectorization:
337                       native: true
338                   Select Operator
339                     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( 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 INTERVAL YEAR TO MONTH) <> INTERVAL'1-2') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) >= INTERVAL'1-3') (type: boolean), (CAST( str1 AS INTERVAL YEAR TO MONTH) > INTERVAL'1-3') (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) <= INTERVAL'1-2') (type: boolean), (CAST( str2 AS INTERVAL YEAR TO MONTH) < INTERVAL'1-2') (type: boolean), (INTERVAL'1-2' <> CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' >= CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-2' > CAST( str2 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-3' <= CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean), (INTERVAL'1-3' < CAST( str1 AS INTERVAL YEAR TO MONTH)) (type: boolean)
340                     outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col7, _col8, _col9, _col10, _col11, _col13, _col14, _col15, _col16, _col17
341                     Select Vectorization:
342                         className: VectorSelectOperator
343                         native: true
344                         projectedOutputColumnNums: [2, 9, 10, 11, 12, 13, 8, 14, 15, 16, 17, 18, 19, 20, 21, 22]
345                         selectExpressions: LongColNotEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 9:boolean, LongColGreaterEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month) -> 10:boolean, LongColGreaterLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month) -> 11:boolean, LongColLessEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 12:boolean, LongColLessLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month) -> 13:boolean, IntervalYearMonthColNotEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:boolean, IntervalYearMonthColGreaterEqualIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 14:boolean, IntervalYearMonthColGreaterIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 15:boolean, IntervalYearMonthColLessEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 16:boolean, IntervalYearMonthColLessIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 17:boolean, IntervalYearMonthScalarNotEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 18:boolean, IntervalYearMonthScalarGreaterEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 19:boolean, IntervalYearMonthScalarGreaterIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month) -> 20:boolean, IntervalYearMonthScalarLessEqualIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 21:boolean, IntervalYearMonthScalarLessIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 22:boolean
346                     Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
347                     Reduce Output Operator
348                       key expressions: _col0 (type: string)
349                       sort order: +
350                       Reduce Sink Vectorization:
351                           className: VectorReduceSinkObjectHashOperator
352                           native: true
353                           nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
354                       Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
355                       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)
356             Execution mode: vectorized, llap
357             LLAP IO: all inputs
358             Map Vectorization:
359                 enabled: true
360                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
361                 inputFormatFeatureSupport: []
362                 featureSupportInUse: []
363                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
364                 allNative: true
365                 usesVectorUDFAdaptor: false
366                 vectorized: true
367         Reducer 2 
368             Execution mode: vectorized, llap
369             Reduce Vectorization:
370                 enabled: true
371                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
372                 allNative: false
373                 usesVectorUDFAdaptor: false
374                 vectorized: true
375             Reduce Operator Tree:
376               Select Operator
377                 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)
378                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18
379                 Select Vectorization:
380                     className: VectorSelectOperator
381                     native: true
382                     projectedOutputColumnNums: [0, 1, 2, 3, 4, 5, 1, 6, 7, 8, 9, 10, 6, 11, 12, 13, 14, 15, 11]
383                 Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
384                 File Output Operator
385                   compressed: false
386                   File Sink Vectorization:
387                       className: VectorFileSinkOperator
388                       native: false
389                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
390                   table:
391                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
392                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
393                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
394
395   Stage: Stage-0
396     Fetch Operator
397       limit: -1
398       Processor Tree:
399         ListSink
400
401 PREHOOK: query: select
402   str1,
403   -- Should all be false
404   interval_year_month(str1) != interval_year_month(str1),
405   interval_year_month(str1) >= interval_year_month(str2),
406   interval_year_month(str1) > interval_year_month(str2),
407   interval_year_month(str2) <= interval_year_month(str1),
408   interval_year_month(str2) < interval_year_month(str1),
409   interval_year_month(str1) != interval_year_month(str1),
410
411   interval_year_month(str1) != interval '1-2' year to month,
412   interval_year_month(str1) >= interval '1-3' year to month,
413   interval_year_month(str1) > interval '1-3' year to month,
414   interval_year_month(str2) <= interval '1-2' year to month,
415   interval_year_month(str2) < interval '1-2' year to month,
416   interval_year_month(str1) != interval '1-2' year to month,
417
418   interval '1-2' year to month != interval_year_month(str1),
419   interval '1-2' year to month >= interval_year_month(str2),
420   interval '1-2' year to month > interval_year_month(str2),
421   interval '1-3' year to month <= interval_year_month(str1),
422   interval '1-3' year to month < interval_year_month(str1),
423   interval '1-2' year to month != interval_year_month(str1)
424 from vector_interval_2 order by str1
425 PREHOOK: type: QUERY
426 PREHOOK: Input: default@vector_interval_2
427 #### A masked pattern was here ####
428 POSTHOOK: query: select
429   str1,
430   -- Should all be false
431   interval_year_month(str1) != interval_year_month(str1),
432   interval_year_month(str1) >= interval_year_month(str2),
433   interval_year_month(str1) > interval_year_month(str2),
434   interval_year_month(str2) <= interval_year_month(str1),
435   interval_year_month(str2) < interval_year_month(str1),
436   interval_year_month(str1) != interval_year_month(str1),
437
438   interval_year_month(str1) != interval '1-2' year to month,
439   interval_year_month(str1) >= interval '1-3' year to month,
440   interval_year_month(str1) > interval '1-3' year to month,
441   interval_year_month(str2) <= interval '1-2' year to month,
442   interval_year_month(str2) < interval '1-2' year to month,
443   interval_year_month(str1) != interval '1-2' year to month,
444
445   interval '1-2' year to month != interval_year_month(str1),
446   interval '1-2' year to month >= interval_year_month(str2),
447   interval '1-2' year to month > interval_year_month(str2),
448   interval '1-3' year to month <= interval_year_month(str1),
449   interval '1-3' year to month < interval_year_month(str1),
450   interval '1-2' year to month != interval_year_month(str1)
451 from vector_interval_2 order by str1
452 POSTHOOK: type: QUERY
453 POSTHOOK: Input: default@vector_interval_2
454 #### A masked pattern was here ####
455 NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL
456 1-2     false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false
457 PREHOOK: query: explain vectorization expression
458 select
459   str3,
460   -- Should all be true
461   interval_day_time(str3) = interval_day_time(str3),
462   interval_day_time(str3) <= interval_day_time(str3),
463   interval_day_time(str3) <= interval_day_time(str4),
464   interval_day_time(str3) < interval_day_time(str4),
465   interval_day_time(str3) >= interval_day_time(str3),
466   interval_day_time(str4) >= interval_day_time(str3),
467   interval_day_time(str4) > interval_day_time(str3),
468   interval_day_time(str3) != interval_day_time(str4),
469
470   interval_day_time(str3) = interval '1 2:3:4' day to second,
471   interval_day_time(str3) <= interval '1 2:3:4' day to second,
472   interval_day_time(str3) <= interval '1 2:3:5' day to second,
473   interval_day_time(str3) < interval '1 2:3:5' day to second,
474   interval_day_time(str3) >= interval '1 2:3:4' day to second,
475   interval_day_time(str4) >= interval '1 2:3:4' day to second,
476   interval_day_time(str4) > interval '1 2:3:4' day to second,
477   interval_day_time(str3) != interval '1 2:3:5' day to second,
478
479   interval '1 2:3:4' day to second = interval_day_time(str3),
480   interval '1 2:3:4' day to second <= interval_day_time(str3),
481   interval '1 2:3:4' day to second <= interval_day_time(str4),
482   interval '1 2:3:4' day to second < interval_day_time(str4),
483   interval '1 2:3:4' day to second >= interval_day_time(str3),
484   interval '1 2:3:5' day to second >= interval_day_time(str3),
485   interval '1 2:3:5' day to second > interval_day_time(str3),
486   interval '1 2:3:4' day to second != interval_day_time(str4)
487 from vector_interval_2 order by str3
488 PREHOOK: type: QUERY
489 POSTHOOK: query: explain vectorization expression
490 select
491   str3,
492   -- Should all be true
493   interval_day_time(str3) = interval_day_time(str3),
494   interval_day_time(str3) <= interval_day_time(str3),
495   interval_day_time(str3) <= interval_day_time(str4),
496   interval_day_time(str3) < interval_day_time(str4),
497   interval_day_time(str3) >= interval_day_time(str3),
498   interval_day_time(str4) >= interval_day_time(str3),
499   interval_day_time(str4) > interval_day_time(str3),
500   interval_day_time(str3) != interval_day_time(str4),
501
502   interval_day_time(str3) = interval '1 2:3:4' day to second,
503   interval_day_time(str3) <= interval '1 2:3:4' day to second,
504   interval_day_time(str3) <= interval '1 2:3:5' day to second,
505   interval_day_time(str3) < interval '1 2:3:5' day to second,
506   interval_day_time(str3) >= interval '1 2:3:4' day to second,
507   interval_day_time(str4) >= interval '1 2:3:4' day to second,
508   interval_day_time(str4) > interval '1 2:3:4' day to second,
509   interval_day_time(str3) != interval '1 2:3:5' day to second,
510
511   interval '1 2:3:4' day to second = interval_day_time(str3),
512   interval '1 2:3:4' day to second <= interval_day_time(str3),
513   interval '1 2:3:4' day to second <= interval_day_time(str4),
514   interval '1 2:3:4' day to second < interval_day_time(str4),
515   interval '1 2:3:4' day to second >= interval_day_time(str3),
516   interval '1 2:3:5' day to second >= interval_day_time(str3),
517   interval '1 2:3:5' day to second > interval_day_time(str3),
518   interval '1 2:3:4' day to second != interval_day_time(str4)
519 from vector_interval_2 order by str3
520 POSTHOOK: type: QUERY
521 PLAN VECTORIZATION:
522   enabled: true
523   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
524
525 STAGE DEPENDENCIES:
526   Stage-1 is a root stage
527   Stage-0 depends on stages: Stage-1
528
529 STAGE PLANS:
530   Stage: Stage-1
531     Tez
532 #### A masked pattern was here ####
533       Edges:
534         Reducer 2 <- Map 1 (SIMPLE_EDGE)
535 #### A masked pattern was here ####
536       Vertices:
537         Map 1 
538             Map Operator Tree:
539                 TableScan
540                   alias: vector_interval_2
541                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
542                   TableScan Vectorization:
543                       native: true
544                   Select Operator
545                     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) = INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <= INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <= INTERVAL'1 02:03:05.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) < INTERVAL'1 02:03:05.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) >= INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) > INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <> INTERVAL'1 02:03:05.000000000') (type: boolean), (INTERVAL'1 02:03:04.000000000' = CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' <= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' < CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:05.000000000' >= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:05.000000000' > CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' <> CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean)
546                     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
547                     Select Vectorization:
548                         className: VectorSelectOperator
549                         native: true
550                         projectedOutputColumnNums: [4, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]
551                         selectExpressions: IntervalDayTimeColEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 9:boolean, IntervalDayTimeColLessEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 10:boolean, IntervalDayTimeColLessEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time) -> 11:boolean, IntervalDayTimeColLessIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time) -> 12:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 13:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 14:boolean, IntervalDayTimeColGreaterIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 15:boolean, IntervalDayTimeColNotEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time) -> 16:boolean, IntervalDayTimeColEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 17:boolean, IntervalDayTimeColLessEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 18:boolean, IntervalDayTimeColLessEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 19:boolean, IntervalDayTimeColLessIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 20:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 21:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 22:boolean, IntervalDayTimeColGreaterIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 23:boolean, IntervalDayTimeColNotEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 24:boolean, IntervalDayTimeScalarEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 25:boolean, IntervalDayTimeScalarLessEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 26:boolean, IntervalDayTimeScalarLessEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 27:boolean, IntervalDayTimeScalarLessIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 28:boolean, IntervalDayTimeScalarGreaterEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 29:boolean, IntervalDayTimeScalarGreaterEqualIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 30:boolean, IntervalDayTimeScalarGreaterIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 31:boolean, IntervalDayTimeScalarNotEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 32:boolean
552                     Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
553                     Reduce Output Operator
554                       key expressions: _col0 (type: string)
555                       sort order: +
556                       Reduce Sink Vectorization:
557                           className: VectorReduceSinkObjectHashOperator
558                           native: true
559                           nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
560                       Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
561                       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)
562             Execution mode: vectorized, llap
563             LLAP IO: all inputs
564             Map Vectorization:
565                 enabled: true
566                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
567                 inputFormatFeatureSupport: []
568                 featureSupportInUse: []
569                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
570                 allNative: true
571                 usesVectorUDFAdaptor: false
572                 vectorized: true
573         Reducer 2 
574             Execution mode: vectorized, llap
575             Reduce Vectorization:
576                 enabled: true
577                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
578                 allNative: false
579                 usesVectorUDFAdaptor: false
580                 vectorized: true
581             Reduce Operator Tree:
582               Select Operator
583                 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)
584                 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
585                 Select Vectorization:
586                     className: VectorSelectOperator
587                     native: true
588                     projectedOutputColumnNums: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
589                 Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
590                 File Output Operator
591                   compressed: false
592                   File Sink Vectorization:
593                       className: VectorFileSinkOperator
594                       native: false
595                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
596                   table:
597                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
598                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
599                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
600
601   Stage: Stage-0
602     Fetch Operator
603       limit: -1
604       Processor Tree:
605         ListSink
606
607 PREHOOK: query: select
608   str3,
609   -- Should all be true
610   interval_day_time(str3) = interval_day_time(str3),
611   interval_day_time(str3) <= interval_day_time(str3),
612   interval_day_time(str3) <= interval_day_time(str4),
613   interval_day_time(str3) < interval_day_time(str4),
614   interval_day_time(str3) >= interval_day_time(str3),
615   interval_day_time(str4) >= interval_day_time(str3),
616   interval_day_time(str4) > interval_day_time(str3),
617   interval_day_time(str3) != interval_day_time(str4),
618
619   interval_day_time(str3) = interval '1 2:3:4' day to second,
620   interval_day_time(str3) <= interval '1 2:3:4' day to second,
621   interval_day_time(str3) <= interval '1 2:3:5' day to second,
622   interval_day_time(str3) < interval '1 2:3:5' day to second,
623   interval_day_time(str3) >= interval '1 2:3:4' day to second,
624   interval_day_time(str4) >= interval '1 2:3:4' day to second,
625   interval_day_time(str4) > interval '1 2:3:4' day to second,
626   interval_day_time(str3) != interval '1 2:3:5' day to second,
627
628   interval '1 2:3:4' day to second = interval_day_time(str3),
629   interval '1 2:3:4' day to second <= interval_day_time(str3),
630   interval '1 2:3:4' day to second <= interval_day_time(str4),
631   interval '1 2:3:4' day to second < interval_day_time(str4),
632   interval '1 2:3:4' day to second >= interval_day_time(str3),
633   interval '1 2:3:5' day to second >= interval_day_time(str3),
634   interval '1 2:3:5' day to second > interval_day_time(str3),
635   interval '1 2:3:4' day to second != interval_day_time(str4)
636 from vector_interval_2 order by str3
637 PREHOOK: type: QUERY
638 PREHOOK: Input: default@vector_interval_2
639 #### A masked pattern was here ####
640 POSTHOOK: query: select
641   str3,
642   -- Should all be true
643   interval_day_time(str3) = interval_day_time(str3),
644   interval_day_time(str3) <= interval_day_time(str3),
645   interval_day_time(str3) <= interval_day_time(str4),
646   interval_day_time(str3) < interval_day_time(str4),
647   interval_day_time(str3) >= interval_day_time(str3),
648   interval_day_time(str4) >= interval_day_time(str3),
649   interval_day_time(str4) > interval_day_time(str3),
650   interval_day_time(str3) != interval_day_time(str4),
651
652   interval_day_time(str3) = interval '1 2:3:4' day to second,
653   interval_day_time(str3) <= interval '1 2:3:4' day to second,
654   interval_day_time(str3) <= interval '1 2:3:5' day to second,
655   interval_day_time(str3) < interval '1 2:3:5' day to second,
656   interval_day_time(str3) >= interval '1 2:3:4' day to second,
657   interval_day_time(str4) >= interval '1 2:3:4' day to second,
658   interval_day_time(str4) > interval '1 2:3:4' day to second,
659   interval_day_time(str3) != interval '1 2:3:5' day to second,
660
661   interval '1 2:3:4' day to second = interval_day_time(str3),
662   interval '1 2:3:4' day to second <= interval_day_time(str3),
663   interval '1 2:3:4' day to second <= interval_day_time(str4),
664   interval '1 2:3:4' day to second < interval_day_time(str4),
665   interval '1 2:3:4' day to second >= interval_day_time(str3),
666   interval '1 2:3:5' day to second >= interval_day_time(str3),
667   interval '1 2:3:5' day to second > interval_day_time(str3),
668   interval '1 2:3:4' day to second != interval_day_time(str4)
669 from vector_interval_2 order by str3
670 POSTHOOK: type: QUERY
671 POSTHOOK: Input: default@vector_interval_2
672 #### A masked pattern was here ####
673 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
674 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
675 PREHOOK: query: explain vectorization expression
676 select
677   str3,
678   -- Should all be false
679   interval_day_time(str3) != interval_day_time(str3),
680   interval_day_time(str3) >= interval_day_time(str4),
681   interval_day_time(str3) > interval_day_time(str4),
682   interval_day_time(str4) <= interval_day_time(str3),
683   interval_day_time(str4) < interval_day_time(str3),
684   interval_day_time(str3) != interval_day_time(str3),
685
686   interval_day_time(str3) != interval '1 2:3:4' day to second,
687   interval_day_time(str3) >= interval '1 2:3:5' day to second,
688   interval_day_time(str3) > interval '1 2:3:5' day to second,
689   interval_day_time(str4) <= interval '1 2:3:4' day to second,
690   interval_day_time(str4) < interval '1 2:3:4' day to second,
691   interval_day_time(str3) != interval '1 2:3:4' day to second,
692
693   interval '1 2:3:4' day to second != interval_day_time(str3),
694   interval '1 2:3:4' day to second >= interval_day_time(str4),
695   interval '1 2:3:4' day to second > interval_day_time(str4),
696   interval '1 2:3:5' day to second <= interval_day_time(str3),
697   interval '1 2:3:5' day to second < interval_day_time(str3),
698   interval '1 2:3:4' day to second != interval_day_time(str3)
699 from vector_interval_2 order by str3
700 PREHOOK: type: QUERY
701 POSTHOOK: query: explain vectorization expression
702 select
703   str3,
704   -- Should all be false
705   interval_day_time(str3) != interval_day_time(str3),
706   interval_day_time(str3) >= interval_day_time(str4),
707   interval_day_time(str3) > interval_day_time(str4),
708   interval_day_time(str4) <= interval_day_time(str3),
709   interval_day_time(str4) < interval_day_time(str3),
710   interval_day_time(str3) != interval_day_time(str3),
711
712   interval_day_time(str3) != interval '1 2:3:4' day to second,
713   interval_day_time(str3) >= interval '1 2:3:5' day to second,
714   interval_day_time(str3) > interval '1 2:3:5' day to second,
715   interval_day_time(str4) <= interval '1 2:3:4' day to second,
716   interval_day_time(str4) < interval '1 2:3:4' day to second,
717   interval_day_time(str3) != interval '1 2:3:4' day to second,
718
719   interval '1 2:3:4' day to second != interval_day_time(str3),
720   interval '1 2:3:4' day to second >= interval_day_time(str4),
721   interval '1 2:3:4' day to second > interval_day_time(str4),
722   interval '1 2:3:5' day to second <= interval_day_time(str3),
723   interval '1 2:3:5' day to second < interval_day_time(str3),
724   interval '1 2:3:4' day to second != interval_day_time(str3)
725 from vector_interval_2 order by str3
726 POSTHOOK: type: QUERY
727 PLAN VECTORIZATION:
728   enabled: true
729   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
730
731 STAGE DEPENDENCIES:
732   Stage-1 is a root stage
733   Stage-0 depends on stages: Stage-1
734
735 STAGE PLANS:
736   Stage: Stage-1
737     Tez
738 #### A masked pattern was here ####
739       Edges:
740         Reducer 2 <- Map 1 (SIMPLE_EDGE)
741 #### A masked pattern was here ####
742       Vertices:
743         Map 1 
744             Map Operator Tree:
745                 TableScan
746                   alias: vector_interval_2
747                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
748                   TableScan Vectorization:
749                       native: true
750                   Select Operator
751                     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( 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: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) < CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) <> INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) >= INTERVAL'1 02:03:05.000000000') (type: boolean), (CAST( str3 AS INTERVAL DAY TO SECOND) > INTERVAL'1 02:03:05.000000000') (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) <= INTERVAL'1 02:03:04.000000000') (type: boolean), (CAST( str4 AS INTERVAL DAY TO SECOND) < INTERVAL'1 02:03:04.000000000') (type: boolean), (INTERVAL'1 02:03:04.000000000' <> CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' >= CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:04.000000000' > CAST( str4 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:05.000000000' <= CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean), (INTERVAL'1 02:03:05.000000000' < CAST( str3 AS INTERVAL DAY TO SECOND)) (type: boolean)
752                     outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col7, _col8, _col9, _col10, _col11, _col13, _col14, _col15, _col16, _col17
753                     Select Vectorization:
754                         className: VectorSelectOperator
755                         native: true
756                         projectedOutputColumnNums: [4, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
757                         selectExpressions: IntervalDayTimeColNotEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 9:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time) -> 10:boolean, IntervalDayTimeColGreaterIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time) -> 11:boolean, IntervalDayTimeColLessEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 12:boolean, IntervalDayTimeColLessIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time) -> 13:boolean, IntervalDayTimeColNotEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 14:boolean, IntervalDayTimeColGreaterEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 15:boolean, IntervalDayTimeColGreaterIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 16:boolean, IntervalDayTimeColLessEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 17:boolean, IntervalDayTimeColLessIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 18:boolean, IntervalDayTimeScalarNotEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 19:boolean, IntervalDayTimeScalarGreaterEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 20:boolean, IntervalDayTimeScalarGreaterIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time) -> 21:boolean, IntervalDayTimeScalarLessEqualIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 22:boolean, IntervalDayTimeScalarLessIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time) -> 23:boolean
758                     Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
759                     Reduce Output Operator
760                       key expressions: _col0 (type: string)
761                       sort order: +
762                       Reduce Sink Vectorization:
763                           className: VectorReduceSinkObjectHashOperator
764                           native: true
765                           nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
766                       Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
767                       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)
768             Execution mode: vectorized, llap
769             LLAP IO: all inputs
770             Map Vectorization:
771                 enabled: true
772                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
773                 inputFormatFeatureSupport: []
774                 featureSupportInUse: []
775                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
776                 allNative: true
777                 usesVectorUDFAdaptor: false
778                 vectorized: true
779         Reducer 2 
780             Execution mode: vectorized, llap
781             Reduce Vectorization:
782                 enabled: true
783                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
784                 allNative: false
785                 usesVectorUDFAdaptor: false
786                 vectorized: true
787             Reduce Operator Tree:
788               Select Operator
789                 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)
790                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13, _col14, _col15, _col16, _col17, _col18
791                 Select Vectorization:
792                     className: VectorSelectOperator
793                     native: true
794                     projectedOutputColumnNums: [0, 1, 2, 3, 4, 5, 1, 6, 7, 8, 9, 10, 6, 11, 12, 13, 14, 15, 11]
795                 Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
796                 File Output Operator
797                   compressed: false
798                   File Sink Vectorization:
799                       className: VectorFileSinkOperator
800                       native: false
801                   Statistics: Num rows: 2 Data size: 736 Basic stats: COMPLETE Column stats: NONE
802                   table:
803                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
804                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
805                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
806
807   Stage: Stage-0
808     Fetch Operator
809       limit: -1
810       Processor Tree:
811         ListSink
812
813 PREHOOK: query: select
814   str3,
815   -- Should all be false
816   interval_day_time(str3) != interval_day_time(str3),
817   interval_day_time(str3) >= interval_day_time(str4),
818   interval_day_time(str3) > interval_day_time(str4),
819   interval_day_time(str4) <= interval_day_time(str3),
820   interval_day_time(str4) < interval_day_time(str3),
821   interval_day_time(str3) != interval_day_time(str3),
822
823   interval_day_time(str3) != interval '1 2:3:4' day to second,
824   interval_day_time(str3) >= interval '1 2:3:5' day to second,
825   interval_day_time(str3) > interval '1 2:3:5' day to second,
826   interval_day_time(str4) <= interval '1 2:3:4' day to second,
827   interval_day_time(str4) < interval '1 2:3:4' day to second,
828   interval_day_time(str3) != interval '1 2:3:4' day to second,
829
830   interval '1 2:3:4' day to second != interval_day_time(str3),
831   interval '1 2:3:4' day to second >= interval_day_time(str4),
832   interval '1 2:3:4' day to second > interval_day_time(str4),
833   interval '1 2:3:5' day to second <= interval_day_time(str3),
834   interval '1 2:3:5' day to second < interval_day_time(str3),
835   interval '1 2:3:4' day to second != interval_day_time(str3)
836 from vector_interval_2 order by str3
837 PREHOOK: type: QUERY
838 PREHOOK: Input: default@vector_interval_2
839 #### A masked pattern was here ####
840 POSTHOOK: query: select
841   str3,
842   -- Should all be false
843   interval_day_time(str3) != interval_day_time(str3),
844   interval_day_time(str3) >= interval_day_time(str4),
845   interval_day_time(str3) > interval_day_time(str4),
846   interval_day_time(str4) <= interval_day_time(str3),
847   interval_day_time(str4) < interval_day_time(str3),
848   interval_day_time(str3) != interval_day_time(str3),
849
850   interval_day_time(str3) != interval '1 2:3:4' day to second,
851   interval_day_time(str3) >= interval '1 2:3:5' day to second,
852   interval_day_time(str3) > interval '1 2:3:5' day to second,
853   interval_day_time(str4) <= interval '1 2:3:4' day to second,
854   interval_day_time(str4) < interval '1 2:3:4' day to second,
855   interval_day_time(str3) != interval '1 2:3:4' day to second,
856
857   interval '1 2:3:4' day to second != interval_day_time(str3),
858   interval '1 2:3:4' day to second >= interval_day_time(str4),
859   interval '1 2:3:4' day to second > interval_day_time(str4),
860   interval '1 2:3:5' day to second <= interval_day_time(str3),
861   interval '1 2:3:5' day to second < interval_day_time(str3),
862   interval '1 2:3:4' day to second != interval_day_time(str3)
863 from vector_interval_2 order by str3
864 POSTHOOK: type: QUERY
865 POSTHOOK: Input: default@vector_interval_2
866 #### A masked pattern was here ####
867 NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL
868 1 2:3:4 false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false   false
869 PREHOOK: query: explain vectorization expression
870 select ts from vector_interval_2
871 where
872   interval_year_month(str1) = interval_year_month(str1)
873   and interval_year_month(str1) != interval_year_month(str2)
874   and interval_year_month(str1) <= interval_year_month(str2)
875   and interval_year_month(str1) < interval_year_month(str2)
876   and interval_year_month(str2) >= interval_year_month(str1)
877   and interval_year_month(str2) > interval_year_month(str1)
878
879   and interval_year_month(str1) = interval '1-2' year to month
880   and interval_year_month(str1) != interval '1-3' year to month
881   and interval_year_month(str1) <= interval '1-3' year to month
882   and interval_year_month(str1) < interval '1-3' year to month
883   and interval_year_month(str2) >= interval '1-2' year to month
884   and interval_year_month(str2) > interval '1-2' year to month
885
886   and interval '1-2' year to month = interval_year_month(str1)
887   and interval '1-2' year to month != interval_year_month(str2)
888   and interval '1-2' year to month <= interval_year_month(str2)
889   and interval '1-2' year to month < interval_year_month(str2)
890   and interval '1-3' year to month >= interval_year_month(str1)
891   and interval '1-3' year to month > interval_year_month(str1)
892 order by ts
893 PREHOOK: type: QUERY
894 POSTHOOK: query: explain vectorization expression
895 select ts from vector_interval_2
896 where
897   interval_year_month(str1) = interval_year_month(str1)
898   and interval_year_month(str1) != interval_year_month(str2)
899   and interval_year_month(str1) <= interval_year_month(str2)
900   and interval_year_month(str1) < interval_year_month(str2)
901   and interval_year_month(str2) >= interval_year_month(str1)
902   and interval_year_month(str2) > interval_year_month(str1)
903
904   and interval_year_month(str1) = interval '1-2' year to month
905   and interval_year_month(str1) != interval '1-3' year to month
906   and interval_year_month(str1) <= interval '1-3' year to month
907   and interval_year_month(str1) < interval '1-3' year to month
908   and interval_year_month(str2) >= interval '1-2' year to month
909   and interval_year_month(str2) > interval '1-2' year to month
910
911   and interval '1-2' year to month = interval_year_month(str1)
912   and interval '1-2' year to month != interval_year_month(str2)
913   and interval '1-2' year to month <= interval_year_month(str2)
914   and interval '1-2' year to month < interval_year_month(str2)
915   and interval '1-3' year to month >= interval_year_month(str1)
916   and interval '1-3' year to month > interval_year_month(str1)
917 order by ts
918 POSTHOOK: type: QUERY
919 PLAN VECTORIZATION:
920   enabled: true
921   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
922
923 STAGE DEPENDENCIES:
924   Stage-1 is a root stage
925   Stage-0 depends on stages: Stage-1
926
927 STAGE PLANS:
928   Stage: Stage-1
929     Tez
930 #### A masked pattern was here ####
931       Edges:
932         Reducer 2 <- Map 1 (SIMPLE_EDGE)
933 #### A masked pattern was here ####
934       Vertices:
935         Map 1 
936             Map Operator Tree:
937                 TableScan
938                   alias: vector_interval_2
939                   Statistics: Num rows: 2 Data size: 816 Basic stats: COMPLETE Column stats: NONE
940                   TableScan Vectorization:
941                       native: true
942                   Filter Operator
943                     Filter Vectorization:
944                         className: VectorFilterOperator
945                         native: true
946                         predicateExpression: FilterExprAndExpr(children: FilterLongColEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month), FilterLongColNotEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month), FilterLongColLessEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month), FilterLongColLessLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 3:string) -> 8:interval_year_month), FilterLongColGreaterEqualLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month), FilterLongColGreaterLongColumn(col 7:interval_year_month, col 8:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month, CastStringToIntervalYearMonth(col 2:string) -> 8:interval_year_month), FilterIntervalYearMonthColEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthColNotEqualIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthColLessEqualIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthColLessIntervalYearMonthScalar(col 7:interval_year_month, val 15)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthColGreaterEqualIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month), FilterIntervalYearMonthColGreaterIntervalYearMonthScalar(col 7:interval_year_month, val 14)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarNotEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarLessEqualIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarLessIntervalYearMonthColumn(val 14, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 3:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarGreaterEqualIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month), FilterIntervalYearMonthScalarGreaterIntervalYearMonthColumn(val 15, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month))
947                     predicate: ((CAST( str1 AS INTERVAL YEAR TO MONTH) < CAST( str2 AS INTERVAL YEAR TO MONTH)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) < INTERVAL'1-3') and (CAST( str1 AS INTERVAL YEAR TO MONTH) <= CAST( str2 AS INTERVAL YEAR TO MONTH)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <= INTERVAL'1-3') and (CAST( str1 AS INTERVAL YEAR TO MONTH) <> CAST( str2 AS INTERVAL YEAR TO MONTH)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) <> INTERVAL'1-3') and (CAST( str1 AS INTERVAL YEAR TO MONTH) = CAST( str1 AS INTERVAL YEAR TO MONTH)) and (CAST( str1 AS INTERVAL YEAR TO MONTH) = INTERVAL'1-2') and (CAST( str2 AS INTERVAL YEAR TO MONTH) > CAST( str1 AS INTERVAL YEAR TO MONTH)) and (CAST( str2 AS INTERVAL YEAR TO MONTH) > INTERVAL'1-2') and (CAST( str2 AS INTERVAL YEAR TO MONTH) >= CAST( str1 AS INTERVAL YEAR TO MONTH)) and (CAST( str2 AS INTERVAL YEAR TO MONTH) >= INTERVAL'1-2') and (INTERVAL'1-2' < CAST( str2 AS INTERVAL YEAR TO MONTH)) and (INTERVAL'1-2' <= CAST( str2 AS INTERVAL YEAR TO MONTH)) and (INTERVAL'1-2' <> CAST( str2 AS INTERVAL YEAR TO MONTH)) and (INTERVAL'1-2' = CAST( str1 AS INTERVAL YEAR TO MONTH)) and (INTERVAL'1-3' > CAST( str1 AS INTERVAL YEAR TO MONTH)) and (INTERVAL'1-3' >= CAST( str1 AS INTERVAL YEAR TO MONTH))) (type: boolean)
948                     Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
949                     Select Operator
950                       expressions: ts (type: timestamp)
951                       outputColumnNames: _col0
952                       Select Vectorization:
953                           className: VectorSelectOperator
954                           native: true
955                           projectedOutputColumnNums: [0]
956                       Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
957                       Reduce Output Operator
958                         key expressions: _col0 (type: timestamp)
959                         sort order: +
960                         Reduce Sink Vectorization:
961                             className: VectorReduceSinkObjectHashOperator
962                             native: true
963                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
964                         Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
965             Execution mode: vectorized, llap
966             LLAP IO: all inputs
967             Map Vectorization:
968                 enabled: true
969                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
970                 inputFormatFeatureSupport: []
971                 featureSupportInUse: []
972                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
973                 allNative: true
974                 usesVectorUDFAdaptor: false
975                 vectorized: true
976         Reducer 2 
977             Execution mode: vectorized, llap
978             Reduce Vectorization:
979                 enabled: true
980                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
981                 allNative: false
982                 usesVectorUDFAdaptor: false
983                 vectorized: true
984             Reduce Operator Tree:
985               Select Operator
986                 expressions: KEY.reducesinkkey0 (type: timestamp)
987                 outputColumnNames: _col0
988                 Select Vectorization:
989                     className: VectorSelectOperator
990                     native: true
991                     projectedOutputColumnNums: [0]
992                 Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
993                 File Output Operator
994                   compressed: false
995                   File Sink Vectorization:
996                       className: VectorFileSinkOperator
997                       native: false
998                   Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
999                   table:
1000                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1001                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1002                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1003
1004   Stage: Stage-0
1005     Fetch Operator
1006       limit: -1
1007       Processor Tree:
1008         ListSink
1009
1010 PREHOOK: query: select ts from vector_interval_2
1011 where
1012   interval_year_month(str1) = interval_year_month(str1)
1013   and interval_year_month(str1) != interval_year_month(str2)
1014   and interval_year_month(str1) <= interval_year_month(str2)
1015   and interval_year_month(str1) < interval_year_month(str2)
1016   and interval_year_month(str2) >= interval_year_month(str1)
1017   and interval_year_month(str2) > interval_year_month(str1)
1018
1019   and interval_year_month(str1) = interval '1-2' year to month
1020   and interval_year_month(str1) != interval '1-3' year to month
1021   and interval_year_month(str1) <= interval '1-3' year to month
1022   and interval_year_month(str1) < interval '1-3' year to month
1023   and interval_year_month(str2) >= interval '1-2' year to month
1024   and interval_year_month(str2) > interval '1-2' year to month
1025
1026   and interval '1-2' year to month = interval_year_month(str1)
1027   and interval '1-2' year to month != interval_year_month(str2)
1028   and interval '1-2' year to month <= interval_year_month(str2)
1029   and interval '1-2' year to month < interval_year_month(str2)
1030   and interval '1-3' year to month >= interval_year_month(str1)
1031   and interval '1-3' year to month > interval_year_month(str1)
1032 order by ts
1033 PREHOOK: type: QUERY
1034 PREHOOK: Input: default@vector_interval_2
1035 #### A masked pattern was here ####
1036 POSTHOOK: query: select ts from vector_interval_2
1037 where
1038   interval_year_month(str1) = interval_year_month(str1)
1039   and interval_year_month(str1) != interval_year_month(str2)
1040   and interval_year_month(str1) <= interval_year_month(str2)
1041   and interval_year_month(str1) < interval_year_month(str2)
1042   and interval_year_month(str2) >= interval_year_month(str1)
1043   and interval_year_month(str2) > interval_year_month(str1)
1044
1045   and interval_year_month(str1) = interval '1-2' year to month
1046   and interval_year_month(str1) != interval '1-3' year to month
1047   and interval_year_month(str1) <= interval '1-3' year to month
1048   and interval_year_month(str1) < interval '1-3' year to month
1049   and interval_year_month(str2) >= interval '1-2' year to month
1050   and interval_year_month(str2) > interval '1-2' year to month
1051
1052   and interval '1-2' year to month = interval_year_month(str1)
1053   and interval '1-2' year to month != interval_year_month(str2)
1054   and interval '1-2' year to month <= interval_year_month(str2)
1055   and interval '1-2' year to month < interval_year_month(str2)
1056   and interval '1-3' year to month >= interval_year_month(str1)
1057   and interval '1-3' year to month > interval_year_month(str1)
1058 order by ts
1059 POSTHOOK: type: QUERY
1060 POSTHOOK: Input: default@vector_interval_2
1061 #### A masked pattern was here ####
1062 2001-01-01 01:02:03
1063 PREHOOK: query: explain vectorization expression
1064 select ts from vector_interval_2
1065 where
1066   interval_day_time(str3) = interval_day_time(str3)
1067   and interval_day_time(str3) != interval_day_time(str4)
1068   and interval_day_time(str3) <= interval_day_time(str4)
1069   and interval_day_time(str3) < interval_day_time(str4)
1070   and interval_day_time(str4) >= interval_day_time(str3)
1071   and interval_day_time(str4) > interval_day_time(str3)
1072
1073   and interval_day_time(str3) = interval '1 2:3:4' day to second
1074   and interval_day_time(str3) != interval '1 2:3:5' day to second
1075   and interval_day_time(str3) <= interval '1 2:3:5' day to second
1076   and interval_day_time(str3) < interval '1 2:3:5' day to second
1077   and interval_day_time(str4) >= interval '1 2:3:4' day to second
1078   and interval_day_time(str4) > interval '1 2:3:4' day to second
1079
1080   and interval '1 2:3:4' day to second = interval_day_time(str3)
1081   and interval '1 2:3:4' day to second != interval_day_time(str4)
1082   and interval '1 2:3:4' day to second <= interval_day_time(str4)
1083   and interval '1 2:3:4' day to second < interval_day_time(str4)
1084   and interval '1 2:3:5' day to second >= interval_day_time(str3)
1085   and interval '1 2:3:5' day to second > interval_day_time(str3)
1086 order by ts
1087 PREHOOK: type: QUERY
1088 POSTHOOK: query: explain vectorization expression
1089 select ts from vector_interval_2
1090 where
1091   interval_day_time(str3) = interval_day_time(str3)
1092   and interval_day_time(str3) != interval_day_time(str4)
1093   and interval_day_time(str3) <= interval_day_time(str4)
1094   and interval_day_time(str3) < interval_day_time(str4)
1095   and interval_day_time(str4) >= interval_day_time(str3)
1096   and interval_day_time(str4) > interval_day_time(str3)
1097
1098   and interval_day_time(str3) = interval '1 2:3:4' day to second
1099   and interval_day_time(str3) != interval '1 2:3:5' day to second
1100   and interval_day_time(str3) <= interval '1 2:3:5' day to second
1101   and interval_day_time(str3) < interval '1 2:3:5' day to second
1102   and interval_day_time(str4) >= interval '1 2:3:4' day to second
1103   and interval_day_time(str4) > interval '1 2:3:4' day to second
1104
1105   and interval '1 2:3:4' day to second = interval_day_time(str3)
1106   and interval '1 2:3:4' day to second != interval_day_time(str4)
1107   and interval '1 2:3:4' day to second <= interval_day_time(str4)
1108   and interval '1 2:3:4' day to second < interval_day_time(str4)
1109   and interval '1 2:3:5' day to second >= interval_day_time(str3)
1110   and interval '1 2:3:5' day to second > interval_day_time(str3)
1111 order by ts
1112 POSTHOOK: type: QUERY
1113 PLAN VECTORIZATION:
1114   enabled: true
1115   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
1116
1117 STAGE DEPENDENCIES:
1118   Stage-1 is a root stage
1119   Stage-0 depends on stages: Stage-1
1120
1121 STAGE PLANS:
1122   Stage: Stage-1
1123     Tez
1124 #### A masked pattern was here ####
1125       Edges:
1126         Reducer 2 <- Map 1 (SIMPLE_EDGE)
1127 #### A masked pattern was here ####
1128       Vertices:
1129         Map 1 
1130             Map Operator Tree:
1131                 TableScan
1132                   alias: vector_interval_2
1133                   Statistics: Num rows: 2 Data size: 816 Basic stats: COMPLETE Column stats: NONE
1134                   TableScan Vectorization:
1135                       native: true
1136                   Filter Operator
1137                     Filter Vectorization:
1138                         className: VectorFilterOperator
1139                         native: true
1140                         predicateExpression: FilterExprAndExpr(children: FilterIntervalDayTimeColEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time), FilterIntervalDayTimeColNotEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time), FilterIntervalDayTimeColLessEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time), FilterIntervalDayTimeColLessIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 5:string) -> 8:interval_day_time), FilterIntervalDayTimeColGreaterEqualIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time), FilterIntervalDayTimeColGreaterIntervalDayTimeColumn(col 7:interval_day_time, col 8:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time, CastStringToIntervalDayTime(col 4:string) -> 8:interval_day_time), FilterIntervalDayTimeColEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeColNotEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeColLessEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeColLessIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:05.000000000)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeColGreaterEqualIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time), FilterIntervalDayTimeColGreaterIntervalDayTimeScalar(col 7:interval_day_time, val 1 02:03:04.000000000)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarNotEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarLessEqualIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarLessIntervalDayTimeColumn(val 1 02:03:04.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 5:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarGreaterEqualIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time), FilterIntervalDayTimeScalarGreaterIntervalDayTimeColumn(val 1 02:03:05.000000000, col 7:interval_day_time)(children: CastStringToIntervalDayTime(col 4:string) -> 7:interval_day_time))
1141                     predicate: ((CAST( str3 AS INTERVAL DAY TO SECOND) < CAST( str4 AS INTERVAL DAY TO SECOND)) and (CAST( str3 AS INTERVAL DAY TO SECOND) < INTERVAL'1 02:03:05.000000000') and (CAST( str3 AS INTERVAL DAY TO SECOND) <= CAST( str4 AS INTERVAL DAY TO SECOND)) and (CAST( str3 AS INTERVAL DAY TO SECOND) <= INTERVAL'1 02:03:05.000000000') and (CAST( str3 AS INTERVAL DAY TO SECOND) <> CAST( str4 AS INTERVAL DAY TO SECOND)) and (CAST( str3 AS INTERVAL DAY TO SECOND) <> INTERVAL'1 02:03:05.000000000') and (CAST( str3 AS INTERVAL DAY TO SECOND) = CAST( str3 AS INTERVAL DAY TO SECOND)) and (CAST( str3 AS INTERVAL DAY TO SECOND) = INTERVAL'1 02:03:04.000000000') and (CAST( str4 AS INTERVAL DAY TO SECOND) > CAST( str3 AS INTERVAL DAY TO SECOND)) and (CAST( str4 AS INTERVAL DAY TO SECOND) > INTERVAL'1 02:03:04.000000000') and (CAST( str4 AS INTERVAL DAY TO SECOND) >= CAST( str3 AS INTERVAL DAY TO SECOND)) and (CAST( str4 AS INTERVAL DAY TO SECOND) >= INTERVAL'1 02:03:04.000000000') and (INTERVAL'1 02:03:04.000000000' < CAST( str4 AS INTERVAL DAY TO SECOND)) and (INTERVAL'1 02:03:04.000000000' <= CAST( str4 AS INTERVAL DAY TO SECOND)) and (INTERVAL'1 02:03:04.000000000' <> CAST( str4 AS INTERVAL DAY TO SECOND)) and (INTERVAL'1 02:03:04.000000000' = CAST( str3 AS INTERVAL DAY TO SECOND)) and (INTERVAL'1 02:03:05.000000000' > CAST( str3 AS INTERVAL DAY TO SECOND)) and (INTERVAL'1 02:03:05.000000000' >= CAST( str3 AS INTERVAL DAY TO SECOND))) (type: boolean)
1142                     Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
1143                     Select Operator
1144                       expressions: ts (type: timestamp)
1145                       outputColumnNames: _col0
1146                       Select Vectorization:
1147                           className: VectorSelectOperator
1148                           native: true
1149                           projectedOutputColumnNums: [0]
1150                       Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
1151                       Reduce Output Operator
1152                         key expressions: _col0 (type: timestamp)
1153                         sort order: +
1154                         Reduce Sink Vectorization:
1155                             className: VectorReduceSinkObjectHashOperator
1156                             native: true
1157                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
1158                         Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
1159             Execution mode: vectorized, llap
1160             LLAP IO: all inputs
1161             Map Vectorization:
1162                 enabled: true
1163                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
1164                 inputFormatFeatureSupport: []
1165                 featureSupportInUse: []
1166                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
1167                 allNative: true
1168                 usesVectorUDFAdaptor: false
1169                 vectorized: true
1170         Reducer 2 
1171             Execution mode: vectorized, llap
1172             Reduce Vectorization:
1173                 enabled: true
1174                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
1175                 allNative: false
1176                 usesVectorUDFAdaptor: false
1177                 vectorized: true
1178             Reduce Operator Tree:
1179               Select Operator
1180                 expressions: KEY.reducesinkkey0 (type: timestamp)
1181                 outputColumnNames: _col0
1182                 Select Vectorization:
1183                     className: VectorSelectOperator
1184                     native: true
1185                     projectedOutputColumnNums: [0]
1186                 Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
1187                 File Output Operator
1188                   compressed: false
1189                   File Sink Vectorization:
1190                       className: VectorFileSinkOperator
1191                       native: false
1192                   Statistics: Num rows: 1 Data size: 408 Basic stats: COMPLETE Column stats: NONE
1193                   table:
1194                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1195                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1196                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1197
1198   Stage: Stage-0
1199     Fetch Operator
1200       limit: -1
1201       Processor Tree:
1202         ListSink
1203
1204 PREHOOK: query: select ts from vector_interval_2
1205 where
1206   interval_day_time(str3) = interval_day_time(str3)
1207   and interval_day_time(str3) != interval_day_time(str4)
1208   and interval_day_time(str3) <= interval_day_time(str4)
1209   and interval_day_time(str3) < interval_day_time(str4)
1210   and interval_day_time(str4) >= interval_day_time(str3)
1211   and interval_day_time(str4) > interval_day_time(str3)
1212
1213   and interval_day_time(str3) = interval '1 2:3:4' day to second
1214   and interval_day_time(str3) != interval '1 2:3:5' day to second
1215   and interval_day_time(str3) <= interval '1 2:3:5' day to second
1216   and interval_day_time(str3) < interval '1 2:3:5' day to second
1217   and interval_day_time(str4) >= interval '1 2:3:4' day to second
1218   and interval_day_time(str4) > interval '1 2:3:4' day to second
1219
1220   and interval '1 2:3:4' day to second = interval_day_time(str3)
1221   and interval '1 2:3:4' day to second != interval_day_time(str4)
1222   and interval '1 2:3:4' day to second <= interval_day_time(str4)
1223   and interval '1 2:3:4' day to second < interval_day_time(str4)
1224   and interval '1 2:3:5' day to second >= interval_day_time(str3)
1225   and interval '1 2:3:5' day to second > interval_day_time(str3)
1226 order by ts
1227 PREHOOK: type: QUERY
1228 PREHOOK: Input: default@vector_interval_2
1229 #### A masked pattern was here ####
1230 POSTHOOK: query: select ts from vector_interval_2
1231 where
1232   interval_day_time(str3) = interval_day_time(str3)
1233   and interval_day_time(str3) != interval_day_time(str4)
1234   and interval_day_time(str3) <= interval_day_time(str4)
1235   and interval_day_time(str3) < interval_day_time(str4)
1236   and interval_day_time(str4) >= interval_day_time(str3)
1237   and interval_day_time(str4) > interval_day_time(str3)
1238
1239   and interval_day_time(str3) = interval '1 2:3:4' day to second
1240   and interval_day_time(str3) != interval '1 2:3:5' day to second
1241   and interval_day_time(str3) <= interval '1 2:3:5' day to second
1242   and interval_day_time(str3) < interval '1 2:3:5' day to second
1243   and interval_day_time(str4) >= interval '1 2:3:4' day to second
1244   and interval_day_time(str4) > interval '1 2:3:4' day to second
1245
1246   and interval '1 2:3:4' day to second = interval_day_time(str3)
1247   and interval '1 2:3:4' day to second != interval_day_time(str4)
1248   and interval '1 2:3:4' day to second <= interval_day_time(str4)
1249   and interval '1 2:3:4' day to second < interval_day_time(str4)
1250   and interval '1 2:3:5' day to second >= interval_day_time(str3)
1251   and interval '1 2:3:5' day to second > interval_day_time(str3)
1252 order by ts
1253 POSTHOOK: type: QUERY
1254 POSTHOOK: Input: default@vector_interval_2
1255 #### A masked pattern was here ####
1256 2001-01-01 01:02:03
1257 PREHOOK: query: explain vectorization expression
1258 select ts from vector_interval_2
1259 where
1260   date '2002-03-01' = dt + interval_year_month(str1)
1261   and date '2002-03-01' <= dt + interval_year_month(str1)
1262   and date '2002-03-01' >= dt + interval_year_month(str1)
1263   and dt + interval_year_month(str1) = date '2002-03-01'
1264   and dt + interval_year_month(str1) <= date '2002-03-01'
1265   and dt + interval_year_month(str1) >= date '2002-03-01'
1266   and dt != dt + interval_year_month(str1)
1267
1268   and date '2002-03-01' = dt + interval '1-2' year to month
1269   and date '2002-03-01' <= dt + interval '1-2' year to month
1270   and date '2002-03-01' >= dt + interval '1-2' year to month
1271   and dt + interval '1-2' year to month = date '2002-03-01'
1272   and dt + interval '1-2' year to month <= date '2002-03-01'
1273   and dt + interval '1-2' year to month >= date '2002-03-01'
1274   and dt != dt + interval '1-2' year to month
1275 order by ts
1276 PREHOOK: type: QUERY
1277 POSTHOOK: query: explain vectorization expression
1278 select ts from vector_interval_2
1279 where
1280   date '2002-03-01' = dt + interval_year_month(str1)
1281   and date '2002-03-01' <= dt + interval_year_month(str1)
1282   and date '2002-03-01' >= dt + interval_year_month(str1)
1283   and dt + interval_year_month(str1) = date '2002-03-01'
1284   and dt + interval_year_month(str1) <= date '2002-03-01'
1285   and dt + interval_year_month(str1) >= date '2002-03-01'
1286   and dt != dt + interval_year_month(str1)
1287
1288   and date '2002-03-01' = dt + interval '1-2' year to month
1289   and date '2002-03-01' <= dt + interval '1-2' year to month
1290   and date '2002-03-01' >= dt + interval '1-2' year to month
1291   and dt + interval '1-2' year to month = date '2002-03-01'
1292   and dt + interval '1-2' year to month <= date '2002-03-01'
1293   and dt + interval '1-2' year to month >= date '2002-03-01'
1294   and dt != dt + interval '1-2' year to month
1295 order by ts
1296 POSTHOOK: type: QUERY
1297 PLAN VECTORIZATION:
1298   enabled: true
1299   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
1300
1301 STAGE DEPENDENCIES:
1302   Stage-1 is a root stage
1303   Stage-0 depends on stages: Stage-1
1304
1305 STAGE PLANS:
1306   Stage: Stage-1
1307     Tez
1308 #### A masked pattern was here ####
1309       Edges:
1310         Reducer 2 <- Map 1 (SIMPLE_EDGE)
1311 #### A masked pattern was here ####
1312       Vertices:
1313         Map 1 
1314             Map Operator Tree:
1315                 TableScan
1316                   alias: vector_interval_2
1317                   Statistics: Num rows: 2 Data size: 560 Basic stats: COMPLETE Column stats: NONE
1318                   TableScan Vectorization:
1319                       native: true
1320                   Filter Operator
1321                     Filter Vectorization:
1322                         className: VectorFilterOperator
1323                         native: true
1324                         predicateExpression: FilterExprAndExpr(children: FilterDateScalarEqualDateColumn(val 11747, col 8:date)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateScalarLessEqualDateColumn(val 11747, col 8:date)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateScalarGreaterEqualDateColumn(val 11747, col 8:date)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateColEqualDateScalar(col 8:date, val 11747)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateColLessEqualDateScalar(col 8:date, val 11747)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateColGreaterEqualDateScalar(col 8:date, val 11747)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterLongColNotEqualLongColumn(col 1:date, col 8:date)(children: DateColAddIntervalYearMonthColumn(col 1:date, col 7:interval_year_month)(children: CastStringToIntervalYearMonth(col 2:string) -> 7:interval_year_month) -> 8:date), FilterDateScalarEqualDateColumn(val 11747, col 7:date)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterDateScalarLessEqualDateColumn(val 11747, col 7:date)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterDateScalarGreaterEqualDateColumn(val 11747, col 7:date)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterDateColEqualDateScalar(col 7:date, val 11747)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterDateColLessEqualDateScalar(col 7:date, val 11747)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterDateColGreaterEqualDateScalar(col 7:date, val 11747)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date), FilterLongColNotEqualLongColumn(col 1:date, col 7:date)(children: DateColAddIntervalYearMonthScalar(col 1:date, val 1-2) -> 7:date))
1325                     predicate: (((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) <= DATE'2002-03-01') and ((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) = DATE'2002-03-01') and ((dt + CAST( str1 AS INTERVAL YEAR TO MONTH)) >= DATE'2002-03-01') and ((dt + INTERVAL'1-2') <= DATE'2002-03-01') and ((dt + INTERVAL'1-2') = DATE'2002-03-01') and ((dt + INTERVAL'1-2') >= DATE'2002-03-01') and (DATE'2002-03-01' <= (dt + CAST( str1 AS INTERVAL YEAR TO MONTH))) and (DATE'2002-03-01' <= (dt + INTERVAL'1-2')) and (DATE'2002-03-01' = (dt + CAST( str1 AS INTERVAL YEAR TO MONTH))) and (DATE'2002-03-01' = (dt + INTERVAL'1-2')) and (DATE'2002-03-01' >= (dt + CAST( str1 AS INTERVAL YEAR TO MONTH))) and (DATE'2002-03-01' >= (dt + INTERVAL'1-2')) and (dt <> (dt + CAST( str1 AS INTERVAL YEAR TO MONTH))) and (dt <> (dt + INTERVAL'1-2'))) (type: boolean)
1326                     Statistics: Num rows: 1 Data size: 280 Basic stats: COMPLETE Column stats: NONE
1327                     Select Operator
1328                       expressions: ts (type: timestamp)
1329                       outputColumnNames: _col0
1330                       Select Vectorization:
1331                           className: VectorSelectOperator
1332                           native: true
1333                           projectedOutputColumnNums: [0]
1334                       Statistics: Num rows: 1 Data size: 280 Basic stats: COMPLETE Column stats: NONE
1335                       Reduce Output Operator
1336                         key expressions: _col0 (type: timestamp)
1337                         sort order: +
1338                         Reduce Sink Vectorization:
1339                             className: VectorReduceSinkObjectHashOperator
1340                             native: true
1341                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
1342                         Statistics: Num rows: 1 Data size: 280 Basic stats: COMPLETE Column stats: NONE
1343             Execution mode: vectorized, llap
1344             LLAP IO: all inputs
1345             Map Vectorization:
1346                 enabled: true
1347                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
1348                 inputFormatFeatureSupport: []
1349                 featureSupportInUse: []
1350                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
1351                 allNative: true
1352                 usesVectorUDFAdaptor: false
1353                 vectorized: true
1354         Reducer 2 
1355             Execution mode: vectorized, llap
1356             Reduce Vectorization:
1357                 enabled: true
1358                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
1359                 allNative: false
1360                 usesVectorUDFAdaptor: false
1361                 vectorized: true
1362             Reduce Operator Tree:
1363               Select Operator
1364                 expressions: KEY.reducesinkkey0 (type: timestamp)
1365                 outputColumnNames: _col0
1366                 Select Vectorization:
1367                     className: VectorSelectOperator
1368                     native: true
1369                     projectedOutputColumnNums: [0]
1370                 Statistics: Num rows: 1 Data size: 280 Basic stats: COMPLETE Column stats: NONE
1371                 File Output Operator
1372                   compressed: false
1373                   File Sink Vectorization:
1374                       className: VectorFileSinkOperator
1375                       native: false
1376                   Statistics: Num rows: 1 Data size: 280 Basic stats: COMPLETE Column stats: NONE
1377                   table:
1378                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1379                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1380                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1381
1382   Stage: Stage-0
1383     Fetch Operator
1384       limit: -1
1385       Processor Tree:
1386         ListSink
1387
1388 PREHOOK: query: select ts from vector_interval_2
1389 where
1390   date '2002-03-01' = dt + interval_year_month(str1)
1391   and date '2002-03-01' <= dt + interval_year_month(str1)
1392   and date '2002-03-01' >= dt + interval_year_month(str1)
1393   and dt + interval_year_month(str1) = date '2002-03-01'
1394   and dt + interval_year_month(str1) <= date '2002-03-01'
1395   and dt + interval_year_month(str1) >= date '2002-03-01'
1396   and dt != dt + interval_year_month(str1)
1397
1398   and date '2002-03-01' = dt + interval '1-2' year to month
1399   and date '2002-03-01' <= dt + interval '1-2' year to month
1400   and date '2002-03-01' >= dt + interval '1-2' year to month
1401   and dt + interval '1-2' year to month = date '2002-03-01'
1402   and dt + interval '1-2' year to month <= date '2002-03-01'
1403   and dt + interval '1-2' year to month >= date '2002-03-01'
1404   and dt != dt + interval '1-2' year to month
1405 order by ts
1406 PREHOOK: type: QUERY
1407 PREHOOK: Input: default@vector_interval_2
1408 #### A masked pattern was here ####
1409 POSTHOOK: query: select ts from vector_interval_2
1410 where
1411   date '2002-03-01' = dt + interval_year_month(str1)
1412   and date '2002-03-01' <= dt + interval_year_month(str1)
1413   and date '2002-03-01' >= dt + interval_year_month(str1)
1414   and dt + interval_year_month(str1) = date '2002-03-01'
1415   and dt + interval_year_month(str1) <= date '2002-03-01'
1416   and dt + interval_year_month(str1) >= date '2002-03-01'
1417   and dt != dt + interval_year_month(str1)
1418
1419   and date '2002-03-01' = dt + interval '1-2' year to month
1420   and date '2002-03-01' <= dt + interval '1-2' year to month
1421   and date '2002-03-01' >= dt + interval '1-2' year to month
1422   and dt + interval '1-2' year to month = date '2002-03-01'
1423   and dt + interval '1-2' year to month <= date '2002-03-01'
1424   and dt + interval '1-2' year to month >= date '2002-03-01'
1425   and dt != dt + interval '1-2' year to month
1426 order by ts
1427 POSTHOOK: type: QUERY
1428 POSTHOOK: Input: default@vector_interval_2
1429 #### A masked pattern was here ####
1430 2001-01-01 01:02:03
1431 PREHOOK: query: explain vectorization expression
1432 select ts from vector_interval_2
1433 where
1434   timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
1435   and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
1436   and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
1437   and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
1438   and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
1439   and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
1440
1441   and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
1442   and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
1443   and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
1444   and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
1445   and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
1446   and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
1447
1448   and ts = ts + interval '0' year
1449   and ts != ts + interval '1' year
1450   and ts <= ts + interval '1' year
1451   and ts < ts + interval '1' year
1452   and ts >= ts - interval '1' year
1453   and ts > ts - interval '1' year
1454 order by ts
1455 PREHOOK: type: QUERY
1456 POSTHOOK: query: explain vectorization expression
1457 select ts from vector_interval_2
1458 where
1459   timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
1460   and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
1461   and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
1462   and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
1463   and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
1464   and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
1465
1466   and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
1467   and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
1468   and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
1469   and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
1470   and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
1471   and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
1472
1473   and ts = ts + interval '0' year
1474   and ts != ts + interval '1' year
1475   and ts <= ts + interval '1' year
1476   and ts < ts + interval '1' year
1477   and ts >= ts - interval '1' year
1478   and ts > ts - interval '1' year
1479 order by ts
1480 POSTHOOK: type: QUERY
1481 PLAN VECTORIZATION:
1482   enabled: true
1483   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
1484
1485 STAGE DEPENDENCIES:
1486   Stage-1 is a root stage
1487   Stage-0 depends on stages: Stage-1
1488
1489 STAGE PLANS:
1490   Stage: Stage-1
1491     Tez
1492 #### A masked pattern was here ####
1493       Edges:
1494         Reducer 2 <- Map 1 (SIMPLE_EDGE)
1495 #### A masked pattern was here ####
1496       Vertices:
1497         Map 1 
1498             Map Operator Tree:
1499                 TableScan
1500                   alias: vector_interval_2
1501                   Statistics: Num rows: 2 Data size: 80 Basic stats: COMPLETE Column stats: NONE
1502                   TableScan Vectorization:
1503                       native: true
1504                   Filter Operator
1505                     Filter Vectorization:
1506                         className: VectorFilterOperator
1507                         native: true
1508                         predicateExpression: FilterExprAndExpr(children: FilterTimestampScalarEqualTimestampColumn(val 2002-03-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampScalarLessEqualTimestampColumn(val 2002-03-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampScalarGreaterEqualTimestampColumn(val 2002-03-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampScalarNotEqualTimestampColumn(val 2002-04-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampScalarLessTimestampColumn(val 2002-02-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampScalarGreaterTimestampColumn(val 2002-04-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColEqualTimestampScalar(col 7:timestamp, val 2002-03-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampScalar(col 7:timestamp, val 2002-03-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColLessEqualTimestampScalar(col 7:timestamp, val 2002-03-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColNotEqualTimestampScalar(col 7:timestamp, val 2002-04-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColGreaterTimestampScalar(col 7:timestamp, val 2002-02-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColLessTimestampScalar(col 7:timestamp, val 2002-04-01 01:02:03.0)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-2) -> 7:timestamp), FilterTimestampColEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 0-0) -> 7:timestamp), FilterTimestampColNotEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-0) -> 7:timestamp), FilterTimestampColLessEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-0) -> 7:timestamp), FilterTimestampColLessTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalYearMonthScalar(col 0:timestamp, val 1-0) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColSubtractIntervalYearMonthScalar(col 0:timestamp, val 1-0) -> 7:timestamp), FilterTimestampColGreaterTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColSubtractIntervalYearMonthScalar(col 0:timestamp, val 1-0) -> 7:timestamp))
1509                     predicate: (((ts + INTERVAL'1-2') < TIMESTAMP'2002-04-01 01:02:03.0') and ((ts + INTERVAL'1-2') <= TIMESTAMP'2002-03-01 01:02:03.0') and ((ts + INTERVAL'1-2') <> TIMESTAMP'2002-04-01 01:02:03.0') and ((ts + INTERVAL'1-2') = TIMESTAMP'2002-03-01 01:02:03.0') and ((ts + INTERVAL'1-2') > TIMESTAMP'2002-02-01 01:02:03.0') and ((ts + INTERVAL'1-2') >= TIMESTAMP'2002-03-01 01:02:03.0') and (TIMESTAMP'2002-02-01 01:02:03.0' < (ts + INTERVAL'1-2')) and (TIMESTAMP'2002-03-01 01:02:03.0' <= (ts + INTERVAL'1-2')) and (TIMESTAMP'2002-03-01 01:02:03.0' = (ts + INTERVAL'1-2')) and (TIMESTAMP'2002-03-01 01:02:03.0' >= (ts + INTERVAL'1-2')) and (TIMESTAMP'2002-04-01 01:02:03.0' <> (ts + INTERVAL'1-2')) and (TIMESTAMP'2002-04-01 01:02:03.0' > (ts + INTERVAL'1-2')) and (ts < (ts + INTERVAL'1-0')) and (ts <= (ts + INTERVAL'1-0')) and (ts <> (ts + INTERVAL'1-0')) and (ts = (ts + INTERVAL'0-0')) and (ts > (ts - INTERVAL'1-0')) and (ts >= (ts - INTERVAL'1-0'))) (type: boolean)
1510                     Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1511                     Select Operator
1512                       expressions: ts (type: timestamp)
1513                       outputColumnNames: _col0
1514                       Select Vectorization:
1515                           className: VectorSelectOperator
1516                           native: true
1517                           projectedOutputColumnNums: [0]
1518                       Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1519                       Reduce Output Operator
1520                         key expressions: _col0 (type: timestamp)
1521                         sort order: +
1522                         Reduce Sink Vectorization:
1523                             className: VectorReduceSinkObjectHashOperator
1524                             native: true
1525                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
1526                         Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1527             Execution mode: vectorized, llap
1528             LLAP IO: all inputs
1529             Map Vectorization:
1530                 enabled: true
1531                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
1532                 inputFormatFeatureSupport: []
1533                 featureSupportInUse: []
1534                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
1535                 allNative: true
1536                 usesVectorUDFAdaptor: false
1537                 vectorized: true
1538         Reducer 2 
1539             Execution mode: vectorized, llap
1540             Reduce Vectorization:
1541                 enabled: true
1542                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
1543                 allNative: false
1544                 usesVectorUDFAdaptor: false
1545                 vectorized: true
1546             Reduce Operator Tree:
1547               Select Operator
1548                 expressions: KEY.reducesinkkey0 (type: timestamp)
1549                 outputColumnNames: _col0
1550                 Select Vectorization:
1551                     className: VectorSelectOperator
1552                     native: true
1553                     projectedOutputColumnNums: [0]
1554                 Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1555                 File Output Operator
1556                   compressed: false
1557                   File Sink Vectorization:
1558                       className: VectorFileSinkOperator
1559                       native: false
1560                   Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1561                   table:
1562                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1563                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1564                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1565
1566   Stage: Stage-0
1567     Fetch Operator
1568       limit: -1
1569       Processor Tree:
1570         ListSink
1571
1572 PREHOOK: query: select ts from vector_interval_2
1573 where
1574   timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
1575   and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
1576   and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
1577   and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
1578   and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
1579   and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
1580
1581   and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
1582   and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
1583   and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
1584   and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
1585   and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
1586   and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
1587
1588   and ts = ts + interval '0' year
1589   and ts != ts + interval '1' year
1590   and ts <= ts + interval '1' year
1591   and ts < ts + interval '1' year
1592   and ts >= ts - interval '1' year
1593   and ts > ts - interval '1' year
1594 order by ts
1595 PREHOOK: type: QUERY
1596 PREHOOK: Input: default@vector_interval_2
1597 #### A masked pattern was here ####
1598 POSTHOOK: query: select ts from vector_interval_2
1599 where
1600   timestamp '2002-03-01 01:02:03' = ts + interval '1-2' year to month
1601   and timestamp '2002-03-01 01:02:03' <= ts + interval '1-2' year to month
1602   and timestamp '2002-03-01 01:02:03' >= ts + interval '1-2' year to month
1603   and timestamp '2002-04-01 01:02:03' != ts + interval '1-2' year to month
1604   and timestamp '2002-02-01 01:02:03' < ts + interval '1-2' year to month
1605   and timestamp '2002-04-01 01:02:03' > ts + interval '1-2' year to month
1606
1607   and ts + interval '1-2' year to month = timestamp '2002-03-01 01:02:03'
1608   and ts + interval '1-2' year to month >= timestamp '2002-03-01 01:02:03'
1609   and ts + interval '1-2' year to month <= timestamp '2002-03-01 01:02:03'
1610   and ts + interval '1-2' year to month != timestamp '2002-04-01 01:02:03'
1611   and ts + interval '1-2' year to month > timestamp '2002-02-01 01:02:03'
1612   and ts + interval '1-2' year to month < timestamp '2002-04-01 01:02:03'
1613
1614   and ts = ts + interval '0' year
1615   and ts != ts + interval '1' year
1616   and ts <= ts + interval '1' year
1617   and ts < ts + interval '1' year
1618   and ts >= ts - interval '1' year
1619   and ts > ts - interval '1' year
1620 order by ts
1621 POSTHOOK: type: QUERY
1622 POSTHOOK: Input: default@vector_interval_2
1623 #### A masked pattern was here ####
1624 2001-01-01 01:02:03
1625 PREHOOK: query: explain vectorization expression
1626 select ts from vector_interval_2
1627 where
1628   timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
1629   and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
1630   and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
1631   and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
1632   and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
1633   and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
1634
1635   and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
1636   and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
1637   and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
1638   and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
1639   and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
1640   and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
1641
1642   and ts = dt + interval '0 1:2:3' day to second
1643   and ts != dt + interval '0 1:2:4' day to second
1644   and ts <= dt + interval '0 1:2:3' day to second
1645   and ts < dt + interval '0 1:2:4' day to second
1646   and ts >= dt - interval '0 1:2:3' day to second
1647   and ts > dt - interval '0 1:2:4' day to second
1648 order by ts
1649 PREHOOK: type: QUERY
1650 POSTHOOK: query: explain vectorization expression
1651 select ts from vector_interval_2
1652 where
1653   timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
1654   and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
1655   and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
1656   and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
1657   and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
1658   and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
1659
1660   and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
1661   and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
1662   and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
1663   and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
1664   and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
1665   and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
1666
1667   and ts = dt + interval '0 1:2:3' day to second
1668   and ts != dt + interval '0 1:2:4' day to second
1669   and ts <= dt + interval '0 1:2:3' day to second
1670   and ts < dt + interval '0 1:2:4' day to second
1671   and ts >= dt - interval '0 1:2:3' day to second
1672   and ts > dt - interval '0 1:2:4' day to second
1673 order by ts
1674 POSTHOOK: type: QUERY
1675 PLAN VECTORIZATION:
1676   enabled: true
1677   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
1678
1679 STAGE DEPENDENCIES:
1680   Stage-1 is a root stage
1681   Stage-0 depends on stages: Stage-1
1682
1683 STAGE PLANS:
1684   Stage: Stage-1
1685     Tez
1686 #### A masked pattern was here ####
1687       Edges:
1688         Reducer 2 <- Map 1 (SIMPLE_EDGE)
1689 #### A masked pattern was here ####
1690       Vertices:
1691         Map 1 
1692             Map Operator Tree:
1693                 TableScan
1694                   alias: vector_interval_2
1695                   Statistics: Num rows: 2 Data size: 192 Basic stats: COMPLETE Column stats: NONE
1696                   TableScan Vectorization:
1697                       native: true
1698                   Filter Operator
1699                     Filter Vectorization:
1700                         className: VectorFilterOperator
1701                         native: true
1702                         predicateExpression: FilterExprAndExpr(children: FilterTimestampScalarEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampScalarNotEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampScalarLessEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampScalarLessTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampScalarGreaterEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampScalarGreaterTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColNotEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColGreaterTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColLessEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColLessTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColNotEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColLessEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColLessTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColAddIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:03.000000000) -> 7:timestamp), FilterTimestampColGreaterTimestampColumn(col 0:timestamp, col 7:timestamp)(children: DateColSubtractIntervalDayTimeScalar(col 1:date, val 0 01:02:04.000000000) -> 7:timestamp))
1703                     predicate: (((dt + INTERVAL'0 01:02:03.000000000') = TIMESTAMP'2001-01-01 01:02:03.0') and ((dt + INTERVAL'0 01:02:03.000000000') >= TIMESTAMP'2001-01-01 01:02:03.0') and ((dt + INTERVAL'0 01:02:04.000000000') <> TIMESTAMP'2001-01-01 01:02:03.0') and ((dt + INTERVAL'0 01:02:04.000000000') > TIMESTAMP'2001-01-01 01:02:03.0') and ((dt - INTERVAL'0 01:02:03.000000000') <= TIMESTAMP'2001-01-01 01:02:03.0') and ((dt - INTERVAL'0 01:02:04.000000000') < TIMESTAMP'2001-01-01 01:02:03.0') and (TIMESTAMP'2001-01-01 01:02:03.0' < (dt + INTERVAL'0 01:02:04.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' <= (dt + INTERVAL'0 01:02:03.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' <> (dt + INTERVAL'0 01:02:04.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' = (dt + INTERVAL'0 01:02:03.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' > (dt - INTERVAL'0 01:02:04.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' >= (dt - INTERVAL'0 01:02:03.000000000')) and (ts < (dt + INTERVAL'0 01:02:04.000000000')) and (ts <= (dt + INTERVAL'0 01:02:03.000000000')) and (ts <> (dt + INTERVAL'0 01:02:04.000000000')) and (ts = (dt + INTERVAL'0 01:02:03.000000000')) and (ts > (dt - INTERVAL'0 01:02:04.000000000')) and (ts >= (dt - INTERVAL'0 01:02:03.000000000'))) (type: boolean)
1704                     Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: NONE
1705                     Select Operator
1706                       expressions: ts (type: timestamp)
1707                       outputColumnNames: _col0
1708                       Select Vectorization:
1709                           className: VectorSelectOperator
1710                           native: true
1711                           projectedOutputColumnNums: [0]
1712                       Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: NONE
1713                       Reduce Output Operator
1714                         key expressions: _col0 (type: timestamp)
1715                         sort order: +
1716                         Reduce Sink Vectorization:
1717                             className: VectorReduceSinkObjectHashOperator
1718                             native: true
1719                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
1720                         Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: NONE
1721             Execution mode: vectorized, llap
1722             LLAP IO: all inputs
1723             Map Vectorization:
1724                 enabled: true
1725                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
1726                 inputFormatFeatureSupport: []
1727                 featureSupportInUse: []
1728                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
1729                 allNative: true
1730                 usesVectorUDFAdaptor: false
1731                 vectorized: true
1732         Reducer 2 
1733             Execution mode: vectorized, llap
1734             Reduce Vectorization:
1735                 enabled: true
1736                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
1737                 allNative: false
1738                 usesVectorUDFAdaptor: false
1739                 vectorized: true
1740             Reduce Operator Tree:
1741               Select Operator
1742                 expressions: KEY.reducesinkkey0 (type: timestamp)
1743                 outputColumnNames: _col0
1744                 Select Vectorization:
1745                     className: VectorSelectOperator
1746                     native: true
1747                     projectedOutputColumnNums: [0]
1748                 Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: NONE
1749                 File Output Operator
1750                   compressed: false
1751                   File Sink Vectorization:
1752                       className: VectorFileSinkOperator
1753                       native: false
1754                   Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: NONE
1755                   table:
1756                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1757                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1758                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1759
1760   Stage: Stage-0
1761     Fetch Operator
1762       limit: -1
1763       Processor Tree:
1764         ListSink
1765
1766 PREHOOK: query: select ts from vector_interval_2
1767 where
1768   timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
1769   and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
1770   and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
1771   and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
1772   and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
1773   and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
1774
1775   and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
1776   and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
1777   and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
1778   and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
1779   and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
1780   and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
1781
1782   and ts = dt + interval '0 1:2:3' day to second
1783   and ts != dt + interval '0 1:2:4' day to second
1784   and ts <= dt + interval '0 1:2:3' day to second
1785   and ts < dt + interval '0 1:2:4' day to second
1786   and ts >= dt - interval '0 1:2:3' day to second
1787   and ts > dt - interval '0 1:2:4' day to second
1788 order by ts
1789 PREHOOK: type: QUERY
1790 PREHOOK: Input: default@vector_interval_2
1791 #### A masked pattern was here ####
1792 POSTHOOK: query: select ts from vector_interval_2
1793 where
1794   timestamp '2001-01-01 01:02:03' = dt + interval '0 1:2:3' day to second
1795   and timestamp '2001-01-01 01:02:03' != dt + interval '0 1:2:4' day to second
1796   and timestamp '2001-01-01 01:02:03' <= dt + interval '0 1:2:3' day to second
1797   and timestamp '2001-01-01 01:02:03' < dt + interval '0 1:2:4' day to second
1798   and timestamp '2001-01-01 01:02:03' >= dt - interval '0 1:2:3' day to second
1799   and timestamp '2001-01-01 01:02:03' > dt - interval '0 1:2:4' day to second
1800
1801   and dt + interval '0 1:2:3' day to second = timestamp '2001-01-01 01:02:03'
1802   and dt + interval '0 1:2:4' day to second != timestamp '2001-01-01 01:02:03'
1803   and dt + interval '0 1:2:3' day to second >= timestamp '2001-01-01 01:02:03'
1804   and dt + interval '0 1:2:4' day to second > timestamp '2001-01-01 01:02:03'
1805   and dt - interval '0 1:2:3' day to second <= timestamp '2001-01-01 01:02:03'
1806   and dt - interval '0 1:2:4' day to second < timestamp '2001-01-01 01:02:03'
1807
1808   and ts = dt + interval '0 1:2:3' day to second
1809   and ts != dt + interval '0 1:2:4' day to second
1810   and ts <= dt + interval '0 1:2:3' day to second
1811   and ts < dt + interval '0 1:2:4' day to second
1812   and ts >= dt - interval '0 1:2:3' day to second
1813   and ts > dt - interval '0 1:2:4' day to second
1814 order by ts
1815 POSTHOOK: type: QUERY
1816 POSTHOOK: Input: default@vector_interval_2
1817 #### A masked pattern was here ####
1818 2001-01-01 01:02:03
1819 PREHOOK: query: explain vectorization expression
1820 select ts from vector_interval_2
1821 where
1822   timestamp '2001-01-01 01:02:03' = ts + interval '0' day
1823   and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
1824   and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
1825   and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
1826   and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
1827   and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
1828
1829   and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
1830   and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
1831   and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
1832   and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
1833   and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
1834   and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
1835
1836   and ts = ts + interval '0' day
1837   and ts != ts + interval '1' day
1838   and ts <= ts + interval '1' day
1839   and ts < ts + interval '1' day
1840   and ts >= ts - interval '1' day
1841   and ts > ts - interval '1' day
1842 order by ts
1843 PREHOOK: type: QUERY
1844 POSTHOOK: query: explain vectorization expression
1845 select ts from vector_interval_2
1846 where
1847   timestamp '2001-01-01 01:02:03' = ts + interval '0' day
1848   and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
1849   and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
1850   and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
1851   and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
1852   and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
1853
1854   and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
1855   and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
1856   and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
1857   and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
1858   and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
1859   and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
1860
1861   and ts = ts + interval '0' day
1862   and ts != ts + interval '1' day
1863   and ts <= ts + interval '1' day
1864   and ts < ts + interval '1' day
1865   and ts >= ts - interval '1' day
1866   and ts > ts - interval '1' day
1867 order by ts
1868 POSTHOOK: type: QUERY
1869 PLAN VECTORIZATION:
1870   enabled: true
1871   enabledConditionsMet: [hive.vectorized.execution.enabled IS true]
1872
1873 STAGE DEPENDENCIES:
1874   Stage-1 is a root stage
1875   Stage-0 depends on stages: Stage-1
1876
1877 STAGE PLANS:
1878   Stage: Stage-1
1879     Tez
1880 #### A masked pattern was here ####
1881       Edges:
1882         Reducer 2 <- Map 1 (SIMPLE_EDGE)
1883 #### A masked pattern was here ####
1884       Vertices:
1885         Map 1 
1886             Map Operator Tree:
1887                 TableScan
1888                   alias: vector_interval_2
1889                   Statistics: Num rows: 2 Data size: 80 Basic stats: COMPLETE Column stats: NONE
1890                   TableScan Vectorization:
1891                       native: true
1892                   Filter Operator
1893                     Filter Vectorization:
1894                         className: VectorFilterOperator
1895                         native: true
1896                         predicateExpression: FilterExprAndExpr(children: FilterTimestampScalarEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 0 00:00:00.000000000) -> 7:timestamp), FilterTimestampScalarNotEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampScalarLessEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampScalarLessTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampScalarGreaterEqualTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampScalarGreaterTimestampColumn(val 2001-01-01 01:02:03.0, col 7:timestamp)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 0 00:00:00.000000000) -> 7:timestamp), FilterTimestampColNotEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColGreaterTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColLessEqualTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColLessTimestampScalar(col 7:timestamp, val 2001-01-01 01:02:03.0)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 0 00:00:00.000000000) -> 7:timestamp), FilterTimestampColNotEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColLessEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColLessTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColAddIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColGreaterEqualTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp), FilterTimestampColGreaterTimestampColumn(col 0:timestamp, col 7:timestamp)(children: TimestampColSubtractIntervalDayTimeScalar(col 0:timestamp, val 1 00:00:00.000000000) -> 7:timestamp))
1897                     predicate: (((ts + INTERVAL'0 00:00:00.000000000') = TIMESTAMP'2001-01-01 01:02:03.0') and ((ts + INTERVAL'1 00:00:00.000000000') <> TIMESTAMP'2001-01-01 01:02:03.0') and ((ts + INTERVAL'1 00:00:00.000000000') > TIMESTAMP'2001-01-01 01:02:03.0') and ((ts + INTERVAL'1 00:00:00.000000000') >= TIMESTAMP'2001-01-01 01:02:03.0') and ((ts - INTERVAL'1 00:00:00.000000000') < TIMESTAMP'2001-01-01 01:02:03.0') and ((ts - INTERVAL'1 00:00:00.000000000') <= TIMESTAMP'2001-01-01 01:02:03.0') and (TIMESTAMP'2001-01-01 01:02:03.0' < (ts + INTERVAL'1 00:00:00.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' <= (ts + INTERVAL'1 00:00:00.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' <> (ts + INTERVAL'1 00:00:00.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' = (ts + INTERVAL'0 00:00:00.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' > (ts - INTERVAL'1 00:00:00.000000000')) and (TIMESTAMP'2001-01-01 01:02:03.0' >= (ts - INTERVAL'1 00:00:00.000000000')) and (ts < (ts + INTERVAL'1 00:00:00.000000000')) and (ts <= (ts + INTERVAL'1 00:00:00.000000000')) and (ts <> (ts + INTERVAL'1 00:00:00.000000000')) and (ts = (ts + INTERVAL'0 00:00:00.000000000')) and (ts > (ts - INTERVAL'1 00:00:00.000000000')) and (ts >= (ts - INTERVAL'1 00:00:00.000000000'))) (type: boolean)
1898                     Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1899                     Select Operator
1900                       expressions: ts (type: timestamp)
1901                       outputColumnNames: _col0
1902                       Select Vectorization:
1903                           className: VectorSelectOperator
1904                           native: true
1905                           projectedOutputColumnNums: [0]
1906                       Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1907                       Reduce Output Operator
1908                         key expressions: _col0 (type: timestamp)
1909                         sort order: +
1910                         Reduce Sink Vectorization:
1911                             className: VectorReduceSinkObjectHashOperator
1912                             native: true
1913                             nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
1914                         Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1915             Execution mode: vectorized, llap
1916             LLAP IO: all inputs
1917             Map Vectorization:
1918                 enabled: true
1919                 enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true
1920                 inputFormatFeatureSupport: []
1921                 featureSupportInUse: []
1922                 inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
1923                 allNative: true
1924                 usesVectorUDFAdaptor: false
1925                 vectorized: true
1926         Reducer 2 
1927             Execution mode: vectorized, llap
1928             Reduce Vectorization:
1929                 enabled: true
1930                 enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true
1931                 allNative: false
1932                 usesVectorUDFAdaptor: false
1933                 vectorized: true
1934             Reduce Operator Tree:
1935               Select Operator
1936                 expressions: KEY.reducesinkkey0 (type: timestamp)
1937                 outputColumnNames: _col0
1938                 Select Vectorization:
1939                     className: VectorSelectOperator
1940                     native: true
1941                     projectedOutputColumnNums: [0]
1942                 Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1943                 File Output Operator
1944                   compressed: false
1945                   File Sink Vectorization:
1946                       className: VectorFileSinkOperator
1947                       native: false
1948                   Statistics: Num rows: 1 Data size: 40 Basic stats: COMPLETE Column stats: NONE
1949                   table:
1950                       input format: org.apache.hadoop.mapred.SequenceFileInputFormat
1951                       output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
1952                       serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
1953
1954   Stage: Stage-0
1955     Fetch Operator
1956       limit: -1
1957       Processor Tree:
1958         ListSink
1959
1960 PREHOOK: query: select ts from vector_interval_2
1961 where
1962   timestamp '2001-01-01 01:02:03' = ts + interval '0' day
1963   and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
1964   and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
1965   and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
1966   and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
1967   and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
1968
1969   and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
1970   and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
1971   and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
1972   and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
1973   and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
1974   and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
1975
1976   and ts = ts + interval '0' day
1977   and ts != ts + interval '1' day
1978   and ts <= ts + interval '1' day
1979   and ts < ts + interval '1' day
1980   and ts >= ts - interval '1' day
1981   and ts > ts - interval '1' day
1982 order by ts
1983 PREHOOK: type: QUERY
1984 PREHOOK: Input: default@vector_interval_2
1985 #### A masked pattern was here ####
1986 POSTHOOK: query: select ts from vector_interval_2
1987 where
1988   timestamp '2001-01-01 01:02:03' = ts + interval '0' day
1989   and timestamp '2001-01-01 01:02:03' != ts + interval '1' day
1990   and timestamp '2001-01-01 01:02:03' <= ts + interval '1' day
1991   and timestamp '2001-01-01 01:02:03' < ts + interval '1' day
1992   and timestamp '2001-01-01 01:02:03' >= ts - interval '1' day
1993   and timestamp '2001-01-01 01:02:03' > ts - interval '1' day
1994
1995   and ts + interval '0' day = timestamp '2001-01-01 01:02:03'
1996   and ts + interval '1' day != timestamp '2001-01-01 01:02:03'
1997   and ts + interval '1' day >= timestamp '2001-01-01 01:02:03'
1998   and ts + interval '1' day > timestamp '2001-01-01 01:02:03'
1999   and ts - interval '1' day <= timestamp '2001-01-01 01:02:03'
2000   and ts - interval '1' day < timestamp '2001-01-01 01:02:03'
2001
2002   and ts = ts + interval '0' day
2003   and ts != ts + interval '1' day
2004   and ts <= ts + interval '1' day
2005   and ts < ts + interval '1' day
2006   and ts >= ts - interval '1' day
2007   and ts > ts - interval '1' day
2008 order by ts
2009 POSTHOOK: type: QUERY
2010 POSTHOOK: Input: default@vector_interval_2
2011 #### A masked pattern was here ####
2012 2001-01-01 01:02:03
2013 PREHOOK: query: drop table vector_interval_2
2014 PREHOOK: type: DROPTABLE
2015 PREHOOK: Input: default@vector_interval_2
2016 PREHOOK: Output: default@vector_interval_2
2017 POSTHOOK: query: drop table vector_interval_2
2018 POSTHOOK: type: DROPTABLE
2019 POSTHOOK: Input: default@vector_interval_2
2020 POSTHOOK: Output: default@vector_interval_2