Repository: hive
Updated Branches:
  refs/heads/master 07fe7e210 -> 65cd866eb


http://git-wip-us.apache.org/repos/asf/hive/blob/65cd866e/ql/src/test/results/clientpositive/vector_outer_join6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_outer_join6.q.out 
b/ql/src/test/results/clientpositive/vector_outer_join6.q.out
index 474a9dc..91f04c6 100644
--- a/ql/src/test/results/clientpositive/vector_outer_join6.q.out
+++ b/ql/src/test/results/clientpositive/vector_outer_join6.q.out
@@ -130,7 +130,7 @@ POSTHOOK: query: explain vectorization detail formatted
 select tj1rnum, tj2rnum, tjoin3.rnum as rnumt3 from
    (select tjoin1.rnum tj1rnum, tjoin2.rnum tj2rnum, tjoin2.c1 tj2c1 from 
tjoin1 left outer join tjoin2 on tjoin1.c1 = tjoin2.c1 ) tj left outer join 
tjoin3 on tj2c1 = tjoin3.c1
 POSTHOOK: type: QUERY
-{"PLAN 
VECTORIZATION":{"enabled":true,"enabledConditionsMet":["hive.vectorized.execution.enabled
 IS true"]},"STAGE DEPENDENCIES":{"Stage-7":{"ROOT 
STAGE":"TRUE"},"Stage-5":{"DEPENDENT STAGES":"Stage-7"},"Stage-0":{"DEPENDENT 
STAGES":"Stage-5"}},"STAGE PLANS":{"Stage-7":{"Map Reduce Local Work":{"Alias 
-> Map Local Tables:":{"$hdt$_0:$hdt$_0:tjoin2":{"Fetch 
Operator":{"limit:":"-1"}},"$hdt$_1:tjoin3":{"Fetch 
Operator":{"limit:":"-1"}}},"Alias -> Map Local Operator 
Tree:":{"$hdt$_0:$hdt$_0:tjoin2":{"TableScan":{"alias:":"tjoin2","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin2","isTempTable:":"false","OperatorId:":"TS_0","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: NONE","Ope
 ratorId:":"SEL_1","children":{"HashTable Sink Operator":{"keys:":{"0":"_col1 
(type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_21"}}}}}},"$hdt$_1:tjoin3":{"TableScan":{"alias:":"tjoin3","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin3","isTempTable:":"false","OperatorId:":"TS_8","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"SEL_9","children":{"HashTable Sink 
Operator":{"keys:":{"0":"_col2 (type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_19"}}}}}}}}},"Stage-5":{"Map Reduce":{"Map 
Operator 
Tree:":[{"TableScan":{"alias:":"tjoin1","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 3 Data size: 32 Basic 
 stats: COMPLETE Column stats: NONE","table:":"tjoin1","TableScan 
Vectorization:":{"native:":"true","vectorizationSchemaColumns:":"[0:rnum:int, 
1:c1:int, 2:c2:int, 
3:ROW__ID:struct<transactionid:bigint,bucketid:int,rowid:bigint>]"},"isTempTable:":"false","OperatorId:":"TS_2","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1]"},"Statistics:":"Num rows: 3 Data size: 32 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_23","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col2":"1:Column[_col0]"},"condition
 map:":[{"":"Right Outer Join 0 to 1"}],"keys:":{"0":"_col1 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"className:":"VectorMapJoinOperator","native:":"fal
 se","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable IS 
true","hive.vectorized.execution.mapjoin.native.enabled IS true","One MapJoin 
Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col2"],"Statistics:":"Num 
rows: 4 Data size: 409 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_24","children":{"Select 
Operator":{"expressions:":"_col2 (type: int), _col0 (type: int), _col1 (type: 
int)","columnExprMap:":{"_col0":"Column[_col2]","_col1":"Column[_col0]","_col2":"Column[_col1]"},"outputColumnNames:":["_col0","_col1","_col2"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[2,
 0, 1]"},"Statistics:":"Num rows: 4 Data size: 409 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_25","children":{"Map Join 
 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col3":"1:Column[_col0]"},"condition
 map:":[{"":"Left Outer Join 0 to 1"}],"keys:":{"0":"_col2 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col3"],"Statistics:":"Num 
rows: 4 Data size: 449 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_26","children":{"Select 
Operator":{"expressions:":"_col0 (type: int), _col1 (type: int), _col3 (type: 
int)","columnExprMap:":{"_col0":"Column[_col0]","_col1":"Column[_col1]","_col2":"Column[_col3]"},"ou
 tputColumnNames:":["_col0","_col1","_col2"],"Select 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1, 2]"},"Statistics:":"Num rows: 4 Data size: 449 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_27","children":{"File Output 
Operator":{"compressed:":"false","File Sink 
Vectorization:":{"className:":"VectorFileSinkOperator","native:":"false"},"Statistics:":"Num
 rows: 4 Data size: 449 Basic stats: COMPLETE Column stats: 
NONE","table:":{"input 
format:":"org.apache.hadoop.mapred.SequenceFileInputFormat","output 
format:":"org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat","serde:":"org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"},"OperatorId:":"FS_28"}}}}}}}}}}}}}}],"Execution
 mode:":"vectorized","Map 
Vectorization:":{"enabled:":"true","enabledConditionsMet:":["hive.vectorized.use.vectorized.input.format
 IS 
true"],"inputFormatFeatureSupport:":"[]","featureSupportInUse:":"[]","inputFileFormats:":["org.apache
 
.hadoop.hive.ql.io.orc.OrcInputFormat"],"allNative:":"false","usesVectorUDFAdaptor:":"false","vectorized:":"true","rowBatchContext:":{"dataColumnCount:":"3","includeColumns:":"[0,
 
1]","dataColumns:":["rnum:int","c1:int","c2:int"],"partitionColumnCount:":"0","scratchColumnTypeNames:":"[bigint,
 bigint]"}},"Local Work:":{"Map Reduce Local Work":{}}}},"Stage-0":{"Fetch 
Operator":{"limit:":"-1","Processor 
Tree:":{"ListSink":{"OperatorId:":"LIST_SINK_29"}}}}}}
+{"PLAN 
VECTORIZATION":{"enabled":true,"enabledConditionsMet":["hive.vectorized.execution.enabled
 IS true"]},"STAGE DEPENDENCIES":{"Stage-7":{"ROOT 
STAGE":"TRUE"},"Stage-5":{"DEPENDENT STAGES":"Stage-7"},"Stage-0":{"DEPENDENT 
STAGES":"Stage-5"}},"STAGE PLANS":{"Stage-7":{"Map Reduce Local Work":{"Alias 
-> Map Local Tables:":{"$hdt$_0:$hdt$_0:tjoin2":{"Fetch 
Operator":{"limit:":"-1"}},"$hdt$_1:tjoin3":{"Fetch 
Operator":{"limit:":"-1"}}},"Alias -> Map Local Operator 
Tree:":{"$hdt$_0:$hdt$_0:tjoin2":{"TableScan":{"alias:":"tjoin2","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin2","isTempTable:":"false","OperatorId:":"TS_0","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: NONE","Ope
 ratorId:":"SEL_1","children":{"HashTable Sink Operator":{"keys:":{"0":"_col1 
(type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_21"}}}}}},"$hdt$_1:tjoin3":{"TableScan":{"alias:":"tjoin3","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin3","isTempTable:":"false","OperatorId:":"TS_8","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"SEL_9","children":{"HashTable Sink 
Operator":{"keys:":{"0":"_col2 (type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_19"}}}}}}}}},"Stage-5":{"Map Reduce":{"Map 
Operator 
Tree:":[{"TableScan":{"alias:":"tjoin1","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 3 Data size: 32 Basic 
 stats: COMPLETE Column stats: NONE","table:":"tjoin1","TableScan 
Vectorization:":{"native:":"true","vectorizationSchemaColumns:":"[0:rnum:int, 
1:c1:int, 2:c2:int, 
3:ROW__ID:struct<transactionid:bigint,bucketid:int,rowid:bigint>]"},"isTempTable:":"false","OperatorId:":"TS_2","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1]"},"Statistics:":"Num rows: 3 Data size: 32 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_23","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col2":"1:Column[_col0]"},"condition
 map:":[{"":"Right Outer Join 0 to 1"}],"keys:":{"0":"_col1 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"bigTableKeyExpressions:":["col 1:int"],"bigTableVa
 lueExpressions:":["col 
0:int"],"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col2"],"Statistics:":"Num 
rows: 4 Data size: 409 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_24","children":{"Select 
Operator":{"expressions:":"_col2 (type: int), _col0 (type: int), _col1 (type: 
int)","columnExprMap:":{"_col0":"Column[_col2]","_col1":"Column[_col0]","_col2":"Column[_col1]"},"outputColumnNames:":["_col0","_col1","_col2"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[2,
 0, 1]"},"Statistics:":"Num rows: 4 Data size: 409 Basic
  stats: COMPLETE Column stats: NONE","OperatorId:":"SEL_25","children":{"Map 
Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col3":"1:Column[_col0]"},"condition
 map:":[{"":"Left Outer Join 0 to 1"}],"keys:":{"0":"_col2 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"bigTableKeyExpressions:":["col 
1:int"],"bigTableValueExpressions:":["col 2:int","col 
0:int"],"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col3"],"Statistics:":"Num 
rows: 4 Data size: 449 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_26","children":{"Select Op
 erator":{"expressions:":"_col0 (type: int), _col1 (type: int), _col3 (type: 
int)","columnExprMap:":{"_col0":"Column[_col0]","_col1":"Column[_col1]","_col2":"Column[_col3]"},"outputColumnNames:":["_col0","_col1","_col2"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1, 2]"},"Statistics:":"Num rows: 4 Data size: 449 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_27","children":{"File Output 
Operator":{"compressed:":"false","File Sink 
Vectorization:":{"className:":"VectorFileSinkOperator","native:":"false"},"Statistics:":"Num
 rows: 4 Data size: 449 Basic stats: COMPLETE Column stats: 
NONE","table:":{"input 
format:":"org.apache.hadoop.mapred.SequenceFileInputFormat","output 
format:":"org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat","serde:":"org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"},"OperatorId:":"FS_28"}}}}}}}}}}}}}}],"Execution
 mode:":"vectorized","Map Vectorization:":{"enabled:":"true
 ","enabledConditionsMet:":["hive.vectorized.use.vectorized.input.format IS 
true"],"inputFormatFeatureSupport:":"[]","featureSupportInUse:":"[]","inputFileFormats:":["org.apache.hadoop.hive.ql.io.orc.OrcInputFormat"],"allNative:":"false","usesVectorUDFAdaptor:":"false","vectorized:":"true","rowBatchContext:":{"dataColumnCount:":"3","includeColumns:":"[0,
 
1]","dataColumns:":["rnum:int","c1:int","c2:int"],"partitionColumnCount:":"0","scratchColumnTypeNames:":"[bigint,
 bigint]"}},"Local Work:":{"Map Reduce Local Work":{}}}},"Stage-0":{"Fetch 
Operator":{"limit:":"-1","Processor 
Tree:":{"ListSink":{"OperatorId:":"LIST_SINK_29"}}}}}}
 PREHOOK: query: select tj1rnum, tj2rnum, tjoin3.rnum as rnumt3 from
    (select tjoin1.rnum tj1rnum, tjoin2.rnum tj2rnum, tjoin2.c1 tj2c1 from 
tjoin1 left outer join tjoin2 on tjoin1.c1 = tjoin2.c1 ) tj left outer join 
tjoin3 on tj2c1 = tjoin3.c1
 PREHOOK: type: QUERY
@@ -157,7 +157,7 @@ POSTHOOK: query: explain vectorization detail formatted
 select tj1rnum, tj2rnum as rnumt3 from
    (select tjoin1.rnum tj1rnum, tjoin2.rnum tj2rnum, tjoin2.c1 tj2c1 from 
tjoin1 left outer join tjoin2 on tjoin1.c1 = tjoin2.c1 ) tj left outer join 
tjoin3 on tj2c1 = tjoin3.c1
 POSTHOOK: type: QUERY
-{"PLAN 
VECTORIZATION":{"enabled":true,"enabledConditionsMet":["hive.vectorized.execution.enabled
 IS true"]},"STAGE DEPENDENCIES":{"Stage-7":{"ROOT 
STAGE":"TRUE"},"Stage-5":{"DEPENDENT STAGES":"Stage-7"},"Stage-0":{"DEPENDENT 
STAGES":"Stage-5"}},"STAGE PLANS":{"Stage-7":{"Map Reduce Local Work":{"Alias 
-> Map Local Tables:":{"$hdt$_0:$hdt$_0:tjoin2":{"Fetch 
Operator":{"limit:":"-1"}},"$hdt$_1:tjoin3":{"Fetch 
Operator":{"limit:":"-1"}}},"Alias -> Map Local Operator 
Tree:":{"$hdt$_0:$hdt$_0:tjoin2":{"TableScan":{"alias:":"tjoin2","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin2","isTempTable:":"false","OperatorId:":"TS_0","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: NONE","Ope
 ratorId:":"SEL_1","children":{"HashTable Sink Operator":{"keys:":{"0":"_col1 
(type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_21"}}}}}},"$hdt$_1:tjoin3":{"TableScan":{"alias:":"tjoin3","columns:":["c1"],"database:":"default","Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin3","isTempTable:":"false","OperatorId:":"TS_8","children":{"Select
 Operator":{"expressions:":"c1 (type: 
int)","columnExprMap:":{"_col0":"Column[c1]"},"outputColumnNames:":["_col0"],"Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"SEL_9","children":{"HashTable Sink 
Operator":{"keys:":{"0":"_col2 (type: int)","1":"_col0 (type: 
int)"},"OperatorId:":"HASHTABLESINK_19"}}}}}}}}},"Stage-5":{"Map Reduce":{"Map 
Operator 
Tree:":[{"TableScan":{"alias:":"tjoin1","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 3 Data size: 32 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin1","T
 ableScan 
Vectorization:":{"native:":"true","vectorizationSchemaColumns:":"[0:rnum:int, 
1:c1:int, 2:c2:int, 
3:ROW__ID:struct<transactionid:bigint,bucketid:int,rowid:bigint>]"},"isTempTable:":"false","OperatorId:":"TS_2","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1]"},"Statistics:":"Num rows: 3 Data size: 32 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_23","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col2":"1:Column[_col0]"},"condition
 map:":[{"":"Right Outer Join 0 to 1"}],"keys:":{"0":"_col1 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hash
 table IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col2"],"Statistics:":"Num 
rows: 4 Data size: 409 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_24","children":{"Select 
Operator":{"expressions:":"_col2 (type: int), _col0 (type: int), _col1 (type: 
int)","columnExprMap:":{"_col0":"Column[_col2]","_col1":"Column[_col0]","_col2":"Column[_col1]"},"outputColumnNames:":["_col0","_col1","_col2"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[2,
 0, 1]"},"Statistics:":"Num rows: 4 Data size: 409 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_25","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","
 _col1":"0:Column[_col1]"},"condition map:":[{"":"Left Outer Join 0 to 
1"}],"keys:":{"0":"_col2 (type: int)","1":"_col0 (type: int)"},"Map Join 
Vectorization:":{"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num rows: 4 Data 
size: 449 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_26","children":{"File Output 
Operator":{"compressed:":"false","File Sink 
Vectorization:":{"className:":"VectorFileSinkOperator","native:":"false"},"Statistics:":"Num
 rows: 4 Data size: 449 Basic stats: COMPLETE Column stats: 
NONE","table:":{"input format:":"org.apache.hadoop.mapred.SequenceF
 ileInputFormat","output 
format:":"org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat","serde:":"org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"},"OperatorId:":"FS_27"}}}}}}}}}}}}],"Execution
 mode:":"vectorized","Map 
Vectorization:":{"enabled:":"true","enabledConditionsMet:":["hive.vectorized.use.vectorized.input.format
 IS 
true"],"inputFormatFeatureSupport:":"[]","featureSupportInUse:":"[]","inputFileFormats:":["org.apache.hadoop.hive.ql.io.orc.OrcInputFormat"],"allNative:":"false","usesVectorUDFAdaptor:":"false","vectorized:":"true","rowBatchContext:":{"dataColumnCount:":"3","includeColumns:":"[0,
 
1]","dataColumns:":["rnum:int","c1:int","c2:int"],"partitionColumnCount:":"0","scratchColumnTypeNames:":"[bigint,
 bigint]"}},"Local Work:":{"Map Reduce Local Work":{}}}},"Stage-0":{"Fetch 
Operator":{"limit:":"-1","Processor 
Tree:":{"ListSink":{"OperatorId:":"LIST_SINK_28"}}}}}}
+{"PLAN 
VECTORIZATION":{"enabled":true,"enabledConditionsMet":["hive.vectorized.execution.enabled
 IS true"]},"STAGE DEPENDENCIES":{"Stage-7":{"ROOT 
STAGE":"TRUE"},"Stage-5":{"DEPENDENT STAGES":"Stage-7"},"Stage-0":{"DEPENDENT 
STAGES":"Stage-5"}},"STAGE PLANS":{"Stage-7":{"Map Reduce Local Work":{"Alias 
-> Map Local Tables:":{"$hdt$_0:$hdt$_0:tjoin2":{"Fetch 
Operator":{"limit:":"-1"}},"$hdt$_1:tjoin3":{"Fetch 
Operator":{"limit:":"-1"}}},"Alias -> Map Local Operator 
Tree:":{"$hdt$_0:$hdt$_0:tjoin2":{"TableScan":{"alias:":"tjoin2","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin2","isTempTable:":"false","OperatorId:":"TS_0","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num
 rows: 4 Data size: 372 Basic stats: COMPLETE Column stats: NONE","Ope
 ratorId:":"SEL_1","children":{"HashTable Sink Operator":{"keys:":{"0":"_col1 
(type: int)","1":"_col1 (type: 
int)"},"OperatorId:":"HASHTABLESINK_21"}}}}}},"$hdt$_1:tjoin3":{"TableScan":{"alias:":"tjoin3","columns:":["c1"],"database:":"default","Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin3","isTempTable:":"false","OperatorId:":"TS_8","children":{"Select
 Operator":{"expressions:":"c1 (type: 
int)","columnExprMap:":{"_col0":"Column[c1]"},"outputColumnNames:":["_col0"],"Statistics:":"Num
 rows: 2 Data size: 188 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"SEL_9","children":{"HashTable Sink 
Operator":{"keys:":{"0":"_col2 (type: int)","1":"_col0 (type: 
int)"},"OperatorId:":"HASHTABLESINK_19"}}}}}}}}},"Stage-5":{"Map Reduce":{"Map 
Operator 
Tree:":[{"TableScan":{"alias:":"tjoin1","columns:":["rnum","c1"],"database:":"default","Statistics:":"Num
 rows: 3 Data size: 32 Basic stats: COMPLETE Column stats: 
NONE","table:":"tjoin1","T
 ableScan 
Vectorization:":{"native:":"true","vectorizationSchemaColumns:":"[0:rnum:int, 
1:c1:int, 2:c2:int, 
3:ROW__ID:struct<transactionid:bigint,bucketid:int,rowid:bigint>]"},"isTempTable:":"false","OperatorId:":"TS_2","children":{"Select
 Operator":{"expressions:":"rnum (type: int), c1 (type: 
int)","columnExprMap:":{"_col0":"Column[rnum]","_col1":"Column[c1]"},"outputColumnNames:":["_col0","_col1"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[0,
 1]"},"Statistics:":"Num rows: 3 Data size: 32 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_23","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]","_col2":"1:Column[_col0]"},"condition
 map:":[{"":"Right Outer Join 0 to 1"}],"keys:":{"0":"_col1 (type: 
int)","1":"_col1 (type: int)"},"Map Join 
Vectorization:":{"bigTableKeyExpressions:":["col 
1:int"],"bigTableValueExpressions:":["col 0:int"],"className:":"VectorMapJo
 
inOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1","_col2"],"Statistics:":"Num 
rows: 4 Data size: 409 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_24","children":{"Select 
Operator":{"expressions:":"_col2 (type: int), _col0 (type: int), _col1 (type: 
int)","columnExprMap:":{"_col0":"Column[_col2]","_col1":"Column[_col0]","_col2":"Column[_col1]"},"outputColumnNames:":["_col0","_col1","_col2"],"Select
 
Vectorization:":{"className:":"VectorSelectOperator","native:":"true","projectedOutputColumnNums:":"[2,
 0, 1]"},"Statistics:":"Num rows: 4 Data size: 409 Basic stats: COMPLETE Column 
stats: NONE","OperatorId:":"SEL_
 25","children":{"Map Join 
Operator":{"columnExprMap:":{"_col0":"0:Column[_col0]","_col1":"0:Column[_col1]"},"condition
 map:":[{"":"Left Outer Join 0 to 1"}],"keys:":{"0":"_col2 (type: 
int)","1":"_col0 (type: int)"},"Map Join 
Vectorization:":{"bigTableKeyExpressions:":["col 
1:int"],"bigTableValueExpressions:":["col 2:int","col 
0:int"],"className:":"VectorMapJoinOperator","native:":"false","nativeConditionsMet:":["hive.mapjoin.optimized.hashtable
 IS true","hive.vectorized.execution.mapjoin.native.enabled IS true","One 
MapJoin Condition IS true","No nullsafe IS true","Small table vectorizes IS 
true","Optimized Table and Supports Key Types IS 
true"],"nativeConditionsNotMet:":["hive.execution.engine mr IN [tez, spark] IS 
false"]},"outputColumnNames:":["_col0","_col1"],"Statistics:":"Num rows: 4 Data 
size: 449 Basic stats: COMPLETE Column stats: 
NONE","OperatorId:":"MAPJOIN_26","children":{"File Output 
Operator":{"compressed:":"false","File Sink 
Vectorization:":{"className:":"VectorFileSi
 nkOperator","native:":"false"},"Statistics:":"Num rows: 4 Data size: 449 Basic 
stats: COMPLETE Column stats: NONE","table:":{"input 
format:":"org.apache.hadoop.mapred.SequenceFileInputFormat","output 
format:":"org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat","serde:":"org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"},"OperatorId:":"FS_27"}}}}}}}}}}}}],"Execution
 mode:":"vectorized","Map 
Vectorization:":{"enabled:":"true","enabledConditionsMet:":["hive.vectorized.use.vectorized.input.format
 IS 
true"],"inputFormatFeatureSupport:":"[]","featureSupportInUse:":"[]","inputFileFormats:":["org.apache.hadoop.hive.ql.io.orc.OrcInputFormat"],"allNative:":"false","usesVectorUDFAdaptor:":"false","vectorized:":"true","rowBatchContext:":{"dataColumnCount:":"3","includeColumns:":"[0,
 
1]","dataColumns:":["rnum:int","c1:int","c2:int"],"partitionColumnCount:":"0","scratchColumnTypeNames:":"[bigint,
 bigint]"}},"Local Work:":{"Map Reduce Local Work":{}}}},"Stage-0":{"Fetch 
Operator":{"limit
 :":"-1","Processor Tree:":{"ListSink":{"OperatorId:":"LIST_SINK_28"}}}}}}
 PREHOOK: query: select tj1rnum, tj2rnum as rnumt3 from
    (select tjoin1.rnum tj1rnum, tjoin2.rnum tj2rnum, tjoin2.c1 tj2c1 from 
tjoin1 left outer join tjoin2 on tjoin1.c1 = tjoin2.c1 ) tj left outer join 
tjoin3 on tj2c1 = tjoin3.c1
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/65cd866e/ql/src/test/results/clientpositive/vector_outer_reference_windowed.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/vector_outer_reference_windowed.q.out 
b/ql/src/test/results/clientpositive/vector_outer_reference_windowed.q.out
index cc70cef..fe68e5c 100644
--- a/ql/src/test/results/clientpositive/vector_outer_reference_windowed.q.out
+++ b/ql/src/test/results/clientpositive/vector_outer_reference_windowed.q.out
@@ -465,7 +465,7 @@ STAGE PLANS:
                     aggregators: VectorUDAFSumDecimal64ToDecimal(col 
0:decimal(15,2)/DECIMAL_64) -> decimal(25,2)
                     className: VectorGroupByOperator
                     groupByMode: HASH
-                    keyExpressions: col 0:decimal(15,2)/DECIMAL_64, col 
1:decimal(15,2)/DECIMAL_64
+                    keyExpressions: ConvertDecimal64ToDecimal(col 
0:decimal(15,2)/DECIMAL_64) -> 3:decimal(15,2), ConvertDecimal64ToDecimal(col 
1:decimal(15,2)/DECIMAL_64) -> 4:decimal(15,2)
                     native: false
                     vectorProcessingMode: HASH
                     projectedOutputColumnNums: [0]
@@ -499,7 +499,7 @@ STAGE PLANS:
               includeColumns: [0, 1]
               dataColumns: c1:decimal(15,2)/DECIMAL_64, 
c2:decimal(15,2)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: []
+              scratchColumnTypeNames: [decimal(15,2), decimal(15,2)]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -1532,7 +1532,7 @@ STAGE PLANS:
                     aggregators: VectorUDAFSumDecimal64(col 
0:decimal(7,2)/DECIMAL_64) -> decimal(17,2)/DECIMAL_64
                     className: VectorGroupByOperator
                     groupByMode: HASH
-                    keyExpressions: col 0:decimal(7,2)/DECIMAL_64, col 
1:decimal(7,2)/DECIMAL_64
+                    keyExpressions: ConvertDecimal64ToDecimal(col 
0:decimal(7,2)/DECIMAL_64) -> 3:decimal(7,2), ConvertDecimal64ToDecimal(col 
1:decimal(7,2)/DECIMAL_64) -> 4:decimal(7,2)
                     native: false
                     vectorProcessingMode: HASH
                     projectedOutputColumnNums: [0]
@@ -1566,7 +1566,7 @@ STAGE PLANS:
               includeColumns: [0, 1]
               dataColumns: c1:decimal(7,2)/DECIMAL_64, 
c2:decimal(7,2)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: []
+              scratchColumnTypeNames: [decimal(7,2), decimal(7,2)]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/65cd866e/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out 
b/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out
index 02ada3e..a6fee45 100644
--- a/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out
+++ b/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out
@@ -69,6 +69,8 @@ STAGE PLANS:
                     0 _col0 (type: int)
                     1 _col0 (type: int)
                   Map Join Vectorization:
+                      bigTableKeyExpressions: col 2:int
+                      bigTableValueExpressions: col 2:int
                       className: VectorMapJoinOperator
                       native: false
                       nativeConditionsMet: hive.mapjoin.optimized.hashtable IS 
true, hive.vectorized.execution.mapjoin.native.enabled IS true, One MapJoin 
Condition IS true, No nullsafe IS true, Small table vectorizes IS true, 
Optimized Table and Supports Key Types IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/65cd866e/ql/src/test/results/clientpositive/vectorized_mapjoin2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorized_mapjoin2.q.out 
b/ql/src/test/results/clientpositive/vectorized_mapjoin2.q.out
index 6d81046..3f79d2b 100644
--- a/ql/src/test/results/clientpositive/vectorized_mapjoin2.q.out
+++ b/ql/src/test/results/clientpositive/vectorized_mapjoin2.q.out
@@ -97,6 +97,7 @@ STAGE PLANS:
                     0 _col0 (type: int)
                     1 _col0 (type: int)
                   Map Join Vectorization:
+                      bigTableKeyExpressions: col 0:int
                       className: VectorMapJoinOperator
                       native: false
                       nativeConditionsMet: hive.mapjoin.optimized.hashtable IS 
true, hive.vectorized.execution.mapjoin.native.enabled IS true, One MapJoin 
Condition IS true, No nullsafe IS true, Small table vectorizes IS true, Fast 
Hash Table and No Hybrid Hash Join IS true

Reply via email to