PREHOOK: query: -- SORT_QUERY_RESULTS CREATE TABLE myinput1(key int, value int) PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@myinput1 POSTHOOK: query: -- SORT_QUERY_RESULTS CREATE TABLE myinput1(key int, value int) POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@myinput1 PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in8.txt' INTO TABLE myinput1 PREHOOK: type: LOAD #### A masked pattern was here #### PREHOOK: Output: default@myinput1 POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in8.txt' INTO TABLE myinput1 POSTHOOK: type: LOAD #### A masked pattern was here #### POSTHOOK: Output: default@myinput1 PREHOOK: query: -- merging explain select * from myinput1 a join myinput1 b on a.key<=>b.value PREHOOK: type: QUERY POSTHOOK: query: -- merging explain select * from myinput1 a join myinput1 b on a.key<=>b.value POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int) sort order: + Map-reduce partition columns: key (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: value (type: int) sort order: + Map-reduce partition columns: value (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 keys: 0 key (type: int) 1 value (type: int) nullSafes: [true] outputColumnNames: _col0, _col1, _col5, _col6 Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int) outputColumnNames: _col0, _col1, _col2, _col3 Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 3 Data size: 28 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL NULL PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key PREHOOK: type: QUERY POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int) sort order: + Map-reduce partition columns: key (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: value is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: value (type: int) sort order: + Map-reduce partition columns: value (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Map 4 Map Operator Tree: TableScan alias: c Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int) sort order: + Map-reduce partition columns: key (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 Inner Join 0 to 2 keys: 0 key (type: int) 1 value (type: int) 2 key (type: int) outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key=c.key POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 10 NULL 100 100 100 100 100 100 PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key PREHOOK: type: QUERY POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int) sort order: + Map-reduce partition columns: key (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: value (type: int) sort order: + Map-reduce partition columns: value (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Map 4 Map Operator Tree: TableScan alias: c Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int) sort order: + Map-reduce partition columns: key (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 Inner Join 0 to 2 keys: 0 key (type: int) 1 value (type: int) 2 key (type: int) nullSafes: [true] outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value join myinput1 c on a.key<=>c.key POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 10 NULL 100 100 100 100 100 100 NULL 10 10 NULL NULL 10 NULL 10 10 NULL NULL 35 NULL 10 10 NULL NULL NULL NULL 10 48 NULL NULL 10 NULL 10 48 NULL NULL 35 NULL 10 48 NULL NULL NULL NULL 10 NULL NULL NULL 10 NULL 10 NULL NULL NULL 35 NULL 10 NULL NULL NULL NULL NULL 35 10 NULL NULL 10 NULL 35 10 NULL NULL 35 NULL 35 10 NULL NULL NULL NULL 35 48 NULL NULL 10 NULL 35 48 NULL NULL 35 NULL 35 48 NULL NULL NULL NULL 35 NULL NULL NULL 10 NULL 35 NULL NULL NULL 35 NULL 35 NULL NULL NULL NULL NULL NULL 10 NULL NULL 10 NULL NULL 10 NULL NULL 35 NULL NULL 10 NULL NULL NULL NULL NULL 48 NULL NULL 10 NULL NULL 48 NULL NULL 35 NULL NULL 48 NULL NULL NULL NULL NULL NULL NULL NULL 10 NULL NULL NULL NULL NULL 35 NULL NULL NULL NULL NULL NULL PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value PREHOOK: type: QUERY POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: value is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int), value (type: int) sort order: ++ Map-reduce partition columns: key (type: int), value (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: value (type: int), key (type: int) sort order: ++ Map-reduce partition columns: value (type: int), key (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Map 4 Map Operator Tree: TableScan alias: c Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: value is not null (type: boolean) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int), value (type: int) sort order: ++ Map-reduce partition columns: key (type: int), value (type: int) Statistics: Num rows: 2 Data size: 17 Basic stats: COMPLETE Column stats: NONE Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 Inner Join 0 to 2 keys: 0 key (type: int), value (type: int) 1 value (type: int), key (type: int) 2 key (type: int), value (type: int) nullSafes: [true, false] outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 4 Data size: 37 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value=b.key join myinput1 c on a.key<=>c.key AND a.value=c.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 100 100 100 100 100 100 NULL 10 10 NULL NULL 10 PREHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value PREHOOK: type: QUERY POSTHOOK: query: explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int), value (type: int) sort order: ++ Map-reduce partition columns: key (type: int), value (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: value (type: int), key (type: int) sort order: ++ Map-reduce partition columns: value (type: int), key (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Map 4 Map Operator Tree: TableScan alias: c Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: key (type: int), value (type: int) sort order: ++ Map-reduce partition columns: key (type: int), value (type: int) Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 Inner Join 0 to 2 keys: 0 key (type: int), value (type: int) 1 value (type: int), key (type: int) 2 key (type: int), value (type: int) nullSafes: [true, true] outputColumnNames: _col0, _col1, _col5, _col6, _col10, _col11 Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: int), _col5 (type: int), _col6 (type: int), _col10 (type: int), _col11 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 6 Data size: 57 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.value<=>b.key join myinput1 c on a.key<=>c.key AND a.value<=>c.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 10 NULL 100 100 100 100 100 100 NULL 10 10 NULL NULL 10 NULL NULL NULL NULL NULL NULL PREHOOK: query: -- outer joins SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: -- outer joins SELECT * FROM myinput1 a LEFT OUTER JOIN myinput1 b ON a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 48 NULL NULL NULL NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL NULL PREHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM myinput1 a RIGHT OUTER JOIN myinput1 b ON a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM myinput1 a FULL OUTER JOIN myinput1 b ON a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 48 NULL NULL NULL NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: -- map joins SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: -- map joins SELECT /*+ MAPJOIN(a) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM myinput1 a JOIN myinput1 b ON a.key<=>b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### 10 NULL NULL 10 100 100 100 100 NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL NULL PREHOOK: query: CREATE TABLE smb_input(key int, value int) PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@smb_input POSTHOOK: query: CREATE TABLE smb_input(key int, value int) POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@smb_input PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in4.txt' into table smb_input PREHOOK: type: LOAD #### A masked pattern was here #### PREHOOK: Output: default@smb_input POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in4.txt' into table smb_input POSTHOOK: type: LOAD #### A masked pattern was here #### POSTHOOK: Output: default@smb_input PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in5.txt' into table smb_input PREHOOK: type: LOAD #### A masked pattern was here #### PREHOOK: Output: default@smb_input POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/in5.txt' into table smb_input POSTHOOK: type: LOAD #### A masked pattern was here #### POSTHOOK: Output: default@smb_input PREHOOK: query: -- smbs CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@smb_input1 POSTHOOK: query: -- smbs CREATE TABLE smb_input1(key int, value int) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@smb_input1 PREHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@smb_input2 POSTHOOK: query: CREATE TABLE smb_input2(key int, value int) CLUSTERED BY (value) SORTED BY (value) INTO 2 BUCKETS POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@smb_input2 PREHOOK: query: from smb_input insert overwrite table smb_input1 select * insert overwrite table smb_input2 select * PREHOOK: type: QUERY PREHOOK: Input: default@smb_input PREHOOK: Output: default@smb_input1 PREHOOK: Output: default@smb_input2 POSTHOOK: query: from smb_input insert overwrite table smb_input1 select * insert overwrite table smb_input2 select * POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input POSTHOOK: Output: default@smb_input1 POSTHOOK: Output: default@smb_input2 POSTHOOK: Lineage: smb_input1.key SIMPLE [(smb_input)smb_input.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: smb_input1.value SIMPLE [(smb_input)smb_input.FieldSchema(name:value, type:int, comment:null), ] POSTHOOK: Lineage: smb_input2.key SIMPLE [(smb_input)smb_input.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: smb_input2.value SIMPLE [(smb_input)smb_input.FieldSchema(name:value, type:int, comment:null), ] PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 1000 10 100 10 1000 10 1000 10 100 10 1000 10 100 10 1000 10 1000 100 100 100 100 12 100 12 100 12 100 12 NULL 12 NULL 12 100 12 NULL 12 NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 NULL 10050 NULL 10050 NULL 35 NULL 10050 NULL NULL NULL 35 NULL 10050 NULL 35 NULL 35 NULL 35 NULL NULL NULL NULL NULL 10050 NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key AND a.value <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key AND a.value <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 1000 10 1000 100 100 100 100 12 100 12 100 12 NULL 12 NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 NULL 10050 NULL 35 NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key <=> b.key PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input1 b ON a.key <=> b.key POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 1000 10 100 10 1000 10 1000 10 100 10 1000 10 100 10 1000 10 1000 100 100 100 100 12 100 12 100 12 100 12 NULL 12 NULL 12 100 12 NULL 12 NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 NULL 10050 NULL 10050 NULL 35 NULL 10050 NULL NULL NULL 35 NULL 10050 NULL 35 NULL 35 NULL 35 NULL NULL NULL NULL NULL 10050 NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input1 b ON a.key <=> b.key POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 1000 10 100 10 1000 10 1000 10 100 10 1000 10 100 10 1000 10 1000 100 100 100 100 12 100 12 100 12 100 12 NULL 12 NULL 12 100 12 NULL 12 NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 NULL 10050 NULL 10050 NULL 35 NULL 10050 NULL NULL NULL 35 NULL 10050 NULL 35 NULL 35 NULL 35 NULL NULL NULL NULL NULL 10050 NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key <=> b.key PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input1 b ON a.key <=> b.key POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 1000 10 100 10 1000 10 1000 10 100 10 1000 10 100 10 1000 10 1000 100 100 100 100 12 100 12 100 12 100 12 NULL 12 NULL 12 100 12 NULL 12 NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 NULL 10050 NULL 10050 NULL 35 NULL 10050 NULL NULL NULL 35 NULL 10050 NULL 35 NULL 35 NULL 35 NULL NULL NULL NULL NULL 10050 NULL NULL NULL 35 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 35 10035 NULL 35 NULL 10050 12 NULL NULL 10050 NULL NULL NULL 35 12 NULL NULL 35 NULL NULL NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a JOIN smb_input2 b ON a.key <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 35 10035 NULL 35 NULL 10050 12 NULL NULL 10050 NULL NULL NULL 35 12 NULL NULL 35 NULL NULL NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input1 a LEFT OUTER JOIN smb_input2 b ON a.key <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 10 100 NULL NULL 10 100 NULL NULL 10 1000 NULL NULL 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 12 100 NULL NULL 12 NULL NULL NULL 15 10015 NULL NULL 20 10020 NULL NULL 25 10025 NULL NULL 30 10030 NULL NULL 35 10035 NULL 35 40 10040 NULL NULL 40 10040 NULL NULL 5 10005 NULL NULL 50 10050 NULL NULL 50 10050 NULL NULL 50 10050 NULL NULL 60 10040 NULL NULL 60 10040 NULL NULL 70 10040 NULL NULL 70 10040 NULL NULL 80 10040 NULL NULL 80 10040 NULL NULL NULL 10050 12 NULL NULL 10050 NULL NULL NULL 35 12 NULL NULL 35 NULL NULL NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input1 PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input1 a RIGHT OUTER JOIN smb_input2 b ON a.key <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input1 POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 35 10035 NULL 35 NULL 10050 12 NULL NULL 10050 NULL NULL NULL 35 12 NULL NULL 35 NULL NULL NULL NULL 10 1000 NULL NULL 12 NULL NULL NULL 15 10015 NULL NULL 20 10020 NULL NULL 25 10025 NULL NULL 30 10030 NULL NULL 35 10035 NULL NULL 40 10040 NULL NULL 40 10040 NULL NULL 5 10005 NULL NULL 50 10050 NULL NULL 50 10050 NULL NULL 50 10050 NULL NULL 60 10040 NULL NULL 60 10040 NULL NULL 70 10040 NULL NULL 70 10040 NULL NULL 80 10040 NULL NULL 80 10040 NULL NULL NULL 10050 NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 100 100 10 100 100 100 10 100 12 100 10 100 12 100 10 1000 10 1000 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 12 100 10 100 12 100 10 100 12 100 100 100 12 100 12 100 12 NULL 12 NULL 12 NULL NULL NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 NULL 10050 NULL 35 NULL 35 NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(a) */ * FROM smb_input2 a RIGHT OUTER JOIN smb_input2 b ON a.value <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 100 100 10 100 100 100 10 100 12 100 10 100 12 100 10 1000 10 1000 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 12 100 10 100 12 100 10 100 12 100 100 100 12 100 12 100 12 NULL 12 NULL 12 NULL NULL NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 NULL 10050 NULL 35 NULL 35 NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a JOIN smb_input2 b ON a.value <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 100 100 10 100 100 100 10 100 12 100 10 100 12 100 10 1000 10 1000 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 12 100 10 100 12 100 10 100 12 100 100 100 12 100 12 100 12 NULL 12 NULL 12 NULL NULL NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 NULL 10050 NULL 35 NULL 35 NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value <=> b.value PREHOOK: type: QUERY PREHOOK: Input: default@smb_input2 #### A masked pattern was here #### POSTHOOK: query: SELECT /*+ MAPJOIN(b) */ * FROM smb_input2 a LEFT OUTER JOIN smb_input2 b ON a.value <=> b.value POSTHOOK: type: QUERY POSTHOOK: Input: default@smb_input2 #### A masked pattern was here #### 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 10 100 100 100 10 100 100 100 10 100 12 100 10 100 12 100 10 1000 10 1000 100 100 10 100 100 100 10 100 100 100 100 100 100 100 12 100 12 100 10 100 12 100 10 100 12 100 100 100 12 100 12 100 12 NULL 12 NULL 12 NULL NULL NULL 15 10015 15 10015 20 10020 20 10020 25 10025 25 10025 30 10030 30 10030 35 10035 35 10035 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 5 10005 5 10005 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 40 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 40 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 60 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 40 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 60 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 70 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 80 10040 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 50 10050 NULL 10050 NULL 10050 NULL 35 NULL 35 NULL NULL 12 NULL NULL NULL NULL NULL PREHOOK: query: --HIVE-3315 join predicate transitive explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL PREHOOK: type: QUERY POSTHOOK: query: --HIVE-3315 join predicate transitive explain select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL POSTHOOK: type: QUERY STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on stages: Stage-1 STAGE PLANS: Stage: Stage-1 Tez Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: key is null (type: boolean) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: null (type: void) sort order: + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Map 3 Map Operator Tree: TableScan alias: b Statistics: Num rows: 3 Data size: 26 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: value is null (type: boolean) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: null (type: void) sort order: + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Reducer 2 Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 keys: 0 null (type: void) 1 null (type: void) nullSafes: [true] outputColumnNames: _col1, _col5 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: null (type: void), _col1 (type: int), _col5 (type: int), null (type: void) outputColumnNames: _col0, _col1, _col2, _col3 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL PREHOOK: type: QUERY PREHOOK: Input: default@myinput1 #### A masked pattern was here #### POSTHOOK: query: select * from myinput1 a join myinput1 b on a.key<=>b.value AND a.key is NULL POSTHOOK: type: QUERY POSTHOOK: Input: default@myinput1 #### A masked pattern was here #### NULL 10 10 NULL NULL 10 48 NULL NULL 10 NULL NULL NULL 35 10 NULL NULL 35 48 NULL NULL 35 NULL NULL NULL NULL 10 NULL NULL NULL 48 NULL NULL NULL NULL NULL