PREHOOK: query: CREATE TABLE tbl1(key int, value string) PARTITIONED by (ds string) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS STORED AS rcfile PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@tbl1 POSTHOOK: query: CREATE TABLE tbl1(key int, value string) PARTITIONED by (ds string) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS STORED AS rcfile POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@tbl1 PREHOOK: query: CREATE TABLE tbl2(key int, value string) PARTITIONED by (ds string) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS STORED AS rcfile PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@tbl2 POSTHOOK: query: CREATE TABLE tbl2(key int, value string) PARTITIONED by (ds string) CLUSTERED BY (key) SORTED BY (key) INTO 2 BUCKETS STORED AS rcfile POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@tbl2 PREHOOK: query: alter table tbl1 set serde 'org.apache.hadoop.hive.serde2.columnar.LazyBinaryColumnarSerDe' PREHOOK: type: ALTERTABLE_SERIALIZER PREHOOK: Input: default@tbl1 PREHOOK: Output: default@tbl1 POSTHOOK: query: alter table tbl1 set serde 'org.apache.hadoop.hive.serde2.columnar.LazyBinaryColumnarSerDe' POSTHOOK: type: ALTERTABLE_SERIALIZER POSTHOOK: Input: default@tbl1 POSTHOOK: Output: default@tbl1 PREHOOK: query: alter table tbl2 set serde 'org.apache.hadoop.hive.serde2.columnar.LazyBinaryColumnarSerDe' PREHOOK: type: ALTERTABLE_SERIALIZER PREHOOK: Input: default@tbl2 PREHOOK: Output: default@tbl2 POSTHOOK: query: alter table tbl2 set serde 'org.apache.hadoop.hive.serde2.columnar.LazyBinaryColumnarSerDe' POSTHOOK: type: ALTERTABLE_SERIALIZER POSTHOOK: Input: default@tbl2 POSTHOOK: Output: default@tbl2 PREHOOK: query: insert overwrite table tbl1 partition (ds='1') select * from src where key < 10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Output: default@tbl1@ds=1 POSTHOOK: query: insert overwrite table tbl1 partition (ds='1') select * from src where key < 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@tbl1@ds=1 POSTHOOK: Lineage: tbl1 PARTITION(ds=1).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: tbl1 PARTITION(ds=1).value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: insert overwrite table tbl2 partition (ds='1') select * from src where key < 10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Output: default@tbl2@ds=1 POSTHOOK: query: insert overwrite table tbl2 partition (ds='1') select * from src where key < 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@tbl2@ds=1 POSTHOOK: Lineage: tbl2 PARTITION(ds=1).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: tbl2 PARTITION(ds=1).value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: alter table tbl1 change key key int PREHOOK: type: ALTERTABLE_RENAMECOL PREHOOK: Input: default@tbl1 PREHOOK: Output: default@tbl1 POSTHOOK: query: alter table tbl1 change key key int POSTHOOK: type: ALTERTABLE_RENAMECOL POSTHOOK: Input: default@tbl1 POSTHOOK: Output: default@tbl1 PREHOOK: query: insert overwrite table tbl1 partition (ds='2') select * from src where key < 10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Output: default@tbl1@ds=2 POSTHOOK: query: insert overwrite table tbl1 partition (ds='2') select * from src where key < 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@tbl1@ds=2 POSTHOOK: Lineage: tbl1 PARTITION(ds=2).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: tbl1 PARTITION(ds=2).value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: alter table tbl1 change key key string PREHOOK: type: ALTERTABLE_RENAMECOL PREHOOK: Input: default@tbl1 PREHOOK: Output: default@tbl1 POSTHOOK: query: alter table tbl1 change key key string POSTHOOK: type: ALTERTABLE_RENAMECOL POSTHOOK: Input: default@tbl1 POSTHOOK: Output: default@tbl1 PREHOOK: query: -- The subquery itself is being map-joined. Multiple partitions of tbl1 with different schemas are being read for tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key PREHOOK: type: QUERY PREHOOK: Input: default@tbl1 PREHOOK: Input: default@tbl1@ds=1 PREHOOK: Input: default@tbl1@ds=2 PREHOOK: Input: default@tbl2 PREHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### POSTHOOK: query: -- The subquery itself is being map-joined. Multiple partitions of tbl1 with different schemas are being read for tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@tbl1 POSTHOOK: Input: default@tbl1@ds=1 POSTHOOK: Input: default@tbl1@ds=2 POSTHOOK: Input: default@tbl2 POSTHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### 40 PREHOOK: query: -- The subquery itself is being map-joined. Since the sub-query only contains selects and filters, it should -- be converted to a bucketized mapside join. Multiple partitions of tbl1 with different schemas are being read for each -- bucket of tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key PREHOOK: type: QUERY PREHOOK: Input: default@tbl1 PREHOOK: Input: default@tbl1@ds=1 PREHOOK: Input: default@tbl1@ds=2 PREHOOK: Input: default@tbl2 PREHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### POSTHOOK: query: -- The subquery itself is being map-joined. Since the sub-query only contains selects and filters, it should -- be converted to a bucketized mapside join. Multiple partitions of tbl1 with different schemas are being read for each -- bucket of tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@tbl1 POSTHOOK: Input: default@tbl1@ds=1 POSTHOOK: Input: default@tbl1@ds=2 POSTHOOK: Input: default@tbl2 POSTHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### 40 PREHOOK: query: -- The subquery itself is being map-joined. Since the sub-query only contains selects and filters, it should -- be converted to a sort-merge join. Multiple partitions of tbl1 with different schemas are being read for a -- given file of tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key PREHOOK: type: QUERY PREHOOK: Input: default@tbl1 PREHOOK: Input: default@tbl1@ds=1 PREHOOK: Input: default@tbl1@ds=2 PREHOOK: Input: default@tbl2 PREHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### POSTHOOK: query: -- The subquery itself is being map-joined. Since the sub-query only contains selects and filters, it should -- be converted to a sort-merge join. Multiple partitions of tbl1 with different schemas are being read for a -- given file of tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key as key, a.value as value from tbl1 a where key < 6) subq1 join (select a.key as key, a.value as value from tbl2 a where key < 6) subq2 on subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@tbl1 POSTHOOK: Input: default@tbl1@ds=1 POSTHOOK: Input: default@tbl1@ds=2 POSTHOOK: Input: default@tbl2 POSTHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### 40 PREHOOK: query: -- Since the join key is modified by the sub-query, neither sort-merge join not bucketized map-side -- join should be performed. Multiple partitions of tbl1 with different schemas are being read for tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key+1 as key, concat(a.value, a.value) as value from tbl1 a) subq1 join (select a.key+1 as key, concat(a.value, a.value) as value from tbl2 a) subq2 on subq1.key = subq2.key PREHOOK: type: QUERY PREHOOK: Input: default@tbl1 PREHOOK: Input: default@tbl1@ds=1 PREHOOK: Input: default@tbl1@ds=2 PREHOOK: Input: default@tbl2 PREHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### POSTHOOK: query: -- Since the join key is modified by the sub-query, neither sort-merge join not bucketized map-side -- join should be performed. Multiple partitions of tbl1 with different schemas are being read for tbl2 select /*+mapjoin(subq1)*/ count(*) from (select a.key+1 as key, concat(a.value, a.value) as value from tbl1 a) subq1 join (select a.key+1 as key, concat(a.value, a.value) as value from tbl2 a) subq2 on subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@tbl1 POSTHOOK: Input: default@tbl1@ds=1 POSTHOOK: Input: default@tbl1@ds=2 POSTHOOK: Input: default@tbl2 POSTHOOK: Input: default@tbl2@ds=1 #### A masked pattern was here #### 44