PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
--
------------------------------------------------------------------------------------------
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
--
CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_change_various_various_struct1
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
--
------------------------------------------------------------------------------------------
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
--
CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_various_various_struct1
PREHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct1_a_txt
POSTHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct1_a_txt
PREHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct1_a_txt
POSTHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct1_a_txt
PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct1_a_txt
PREHOOK: Output: default@part_change_various_various_struct1@part=1
POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct1_a_txt
POSTHOOK: Output: default@part_change_various_various_struct1@part=1
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:s1, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
struct1_a_txt.insert_num	struct1_a_txt.s1	struct1_a_txt.b
PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_various_various_struct1
PREHOOK: Input: default@part_change_various_various_struct1@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_various_various_struct1
POSTHOOK: Input: default@part_change_various_various_struct1@part=1
#### A masked pattern was here ####
insert_num	part	s1	b
1	1	{"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile          ","c10":"dynamic reptile  ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)گ}	original
2	1	{"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":"  baffling               ","c10":"  baffling    ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)گ}	original
3	1	{"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1                        ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)گ}	original
4	1	{"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard                 ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)گ}	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@part_change_various_various_struct1
PREHOOK: Output: default@part_change_various_various_struct1
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@part_change_various_various_struct1
POSTHOOK: Output: default@part_change_various_various_struct1
PREHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct1_b_txt
POSTHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct1_b_txt
PREHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct1_b_txt
POSTHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct1_b_txt
PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct1_b_txt
PREHOOK: Output: default@part_change_various_various_struct1@part=2
POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct1_b_txt
POSTHOOK: Output: default@part_change_various_various_struct1@part=2
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).b SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).insert_num SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).s1 SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
struct1_b_txt.insert_num	struct1_b_txt.s1	struct1_b_txt.b
PREHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct1_c_txt
POSTHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct1_c_txt
PREHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct1_c_txt
POSTHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct1_c_txt
PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct1_c_txt
PREHOOK: Output: default@part_change_various_various_struct1@part=1
POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct1_c_txt
POSTHOOK: Output: default@part_change_various_various_struct1@part=1
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
struct1_c_txt.insert_num	struct1_c_txt.s1	struct1_c_txt.b
PREHOOK: query: explain
select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
POSTHOOK: type: QUERY
Explain
Plan optimized by CBO.

Vertex dependency in root stage
Reducer 2 <- Map 1 (SIMPLE_EDGE)

Stage-0
  Fetch Operator
    limit:-1
    Stage-1
      Reducer 2 llap
      File Output Operator [FS_4]
        Select Operator [SEL_3] (rows=6 width=785)
          Output:["_col0","_col1","_col2","_col3"]
        <-Map 1 [SIMPLE_EDGE] llap
          SHUFFLE [RS_2]
            Select Operator [SEL_1] (rows=6 width=785)
              Output:["_col0","_col1","_col2","_col3"]
              TableScan [TS_0] (rows=6 width=785)
                default@part_change_various_various_struct1,part_change_various_various_struct1,Tbl:COMPLETE,Col:NONE,Output:["insert_num","s1","b"]

PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_various_various_struct1
PREHOOK: Input: default@part_change_various_various_struct1@part=1
PREHOOK: Input: default@part_change_various_various_struct1@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_various_various_struct1
POSTHOOK: Input: default@part_change_various_various_struct1@part=1
POSTHOOK: Input: default@part_change_various_various_struct1@part=2
#### A masked pattern was here ####
insert_num	part	s1	b
1	1	{"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile  ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}	original
2	1	{"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":"  baffling","c10":"  baffling    ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}	original
3	1	{"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}	original
4	1	{"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}	original
5	2	{"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}	new
6	1	{"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}	new
PREHOOK: query: drop table part_change_various_various_struct1
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_various_various_struct1
PREHOOK: Output: default@part_change_various_various_struct1
POSTHOOK: query: drop table part_change_various_various_struct1
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_various_various_struct1
POSTHOOK: Output: default@part_change_various_various_struct1
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
--
CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_add_various_various_struct2
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
--
CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_add_various_various_struct2
PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
    values(1, 'original'),
          (2, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
PREHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
    values(1, 'original'),
          (2, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
POSTHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1
PREHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Input: default@part_add_various_various_struct2@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Input: default@part_add_various_various_struct2@part=1
#### A masked pattern was here ####
insert_num	part	b
1	1	original
2	1	original
PREHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Output: default@part_add_various_various_struct2
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Output: default@part_add_various_various_struct2
PREHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct2_a_txt
POSTHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct2_a_txt
PREHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct2_a_txt
POSTHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct2_a_txt
PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct2_a_txt
PREHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct2_a_txt
POSTHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
struct2_a_txt.insert_num	struct2_a_txt.b	struct2_a_txt.s2
PREHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct2_b_txt
POSTHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct2_b_txt
PREHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct2_b_txt
POSTHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct2_b_txt
PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct2_b_txt
PREHOOK: Output: default@part_add_various_various_struct2@part=2
POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct2_b_txt
POSTHOOK: Output: default@part_add_various_various_struct2@part=2
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
struct2_b_txt.insert_num	struct2_b_txt.b	struct2_b_txt.s2
PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Input: default@part_add_various_various_struct2@part=1
PREHOOK: Input: default@part_add_various_various_struct2@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Input: default@part_add_various_various_struct2@part=1
POSTHOOK: Input: default@part_add_various_various_struct2@part=2
#### A masked pattern was here ####
insert_num	part	b	s2
1	1	original	NULL
2	1	original	NULL
3	1	new	{"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile          ","c10":"dynamic reptile  ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)گ}
4	1	new	{"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":"  baffling               ","c10":"  baffling    ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)گ}
5	2	new	{"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1                        ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)گ}
6	2	new	{"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard                 ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)گ}
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Output: default@part_add_various_various_struct2
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Output: default@part_add_various_various_struct2
PREHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct2_c_txt
POSTHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct2_c_txt
PREHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct2_c_txt
POSTHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct2_c_txt
PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct2_c_txt
PREHOOK: Output: default@part_add_various_various_struct2@part=2
POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct2_c_txt
POSTHOOK: Output: default@part_add_various_various_struct2@part=2
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
struct2_c_txt.insert_num	struct2_c_txt.b	struct2_c_txt.s2
PREHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct2_d_txt
POSTHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct2_d_txt
PREHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct2_d_txt
POSTHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct2_d_txt
PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct2_d_txt
PREHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct2_d_txt
POSTHOOK: Output: default@part_add_various_various_struct2@part=1
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
struct2_d_txt.insert_num	struct2_d_txt.b	struct2_d_txt.s2
PREHOOK: query: explain
select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
POSTHOOK: type: QUERY
Explain
Plan optimized by CBO.

Vertex dependency in root stage
Reducer 2 <- Map 1 (SIMPLE_EDGE)

Stage-0
  Fetch Operator
    limit:-1
    Stage-1
      Reducer 2 llap
      File Output Operator [FS_4]
        Select Operator [SEL_3] (rows=8 width=610)
          Output:["_col0","_col1","_col2","_col3"]
        <-Map 1 [SIMPLE_EDGE] llap
          SHUFFLE [RS_2]
            Select Operator [SEL_1] (rows=8 width=610)
              Output:["_col0","_col1","_col2","_col3"]
              TableScan [TS_0] (rows=8 width=610)
                default@part_add_various_various_struct2,part_add_various_various_struct2,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s2"]

PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Input: default@part_add_various_various_struct2@part=1
PREHOOK: Input: default@part_add_various_various_struct2@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Input: default@part_add_various_various_struct2@part=1
POSTHOOK: Input: default@part_add_various_various_struct2@part=2
#### A masked pattern was here ####
insert_num	part	b	s2
1	1	original	NULL
2	1	original	NULL
3	1	new	{"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile  ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}
4	1	new	{"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":"  baffling","c10":"  baffling    ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}
5	2	new	{"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}
6	2	new	{"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}
7	2	new	{"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}
8	1	new	{"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}
PREHOOK: query: drop table part_add_various_various_struct2
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_add_various_various_struct2
PREHOOK: Output: default@part_add_various_various_struct2
POSTHOOK: query: drop table part_add_various_various_struct2
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_add_various_various_struct2
POSTHOOK: Output: default@part_add_various_various_struct2
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
--
CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_add_to_various_various_struct4
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
--
CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_add_to_various_various_struct4
PREHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct4_a_txt
POSTHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct4_a_txt
PREHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct4_a_txt
POSTHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct4_a_txt
PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct4_a_txt
PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct4_a_txt
POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint>, comment:null), ]
struct4_a_txt.insert_num	struct4_a_txt.b	struct4_a_txt.s3
PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_to_various_various_struct4
PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_to_various_various_struct4
POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
#### A masked pattern was here ####
insert_num	part	b	s3
1	1	original	{"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999}
2	1	original	{"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993}
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@part_add_to_various_various_struct4
PREHOOK: Output: default@part_add_to_various_various_struct4
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@part_add_to_various_various_struct4
POSTHOOK: Output: default@part_add_to_various_various_struct4
PREHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct4_b_txt
POSTHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct4_b_txt
PREHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct4_b_txt
POSTHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct4_b_txt
PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct4_b_txt
PREHOOK: Output: default@part_add_to_various_various_struct4@part=2
POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct4_b_txt
POSTHOOK: Output: default@part_add_to_various_various_struct4@part=2
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).b SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).insert_num SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).s3 SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
struct4_b_txt.insert_num	struct4_b_txt.b	struct4_b_txt.s3
PREHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@struct4_c_txt
POSTHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':' stored as textfile
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@struct4_c_txt
PREHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
PREHOOK: type: LOAD
#### A masked pattern was here ####
PREHOOK: Output: default@struct4_c_txt
POSTHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
POSTHOOK: type: LOAD
#### A masked pattern was here ####
POSTHOOK: Output: default@struct4_c_txt
PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
PREHOOK: type: QUERY
PREHOOK: Input: default@struct4_c_txt
PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
POSTHOOK: type: QUERY
POSTHOOK: Input: default@struct4_c_txt
POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:b, type:string, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
struct4_c_txt.insert_num	struct4_c_txt.b	struct4_c_txt.s3
PREHOOK: query: explain
select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
POSTHOOK: type: QUERY
Explain
Plan optimized by CBO.

Vertex dependency in root stage
Reducer 2 <- Map 1 (SIMPLE_EDGE)

Stage-0
  Fetch Operator
    limit:-1
    Stage-1
      Reducer 2 llap
      File Output Operator [FS_4]
        Select Operator [SEL_3] (rows=4 width=289)
          Output:["_col0","_col1","_col2","_col3"]
        <-Map 1 [SIMPLE_EDGE] llap
          SHUFFLE [RS_2]
            Select Operator [SEL_1] (rows=4 width=289)
              Output:["_col0","_col1","_col2","_col3"]
              TableScan [TS_0] (rows=4 width=289)
                default@part_add_to_various_various_struct4,part_add_to_various_various_struct4,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s3"]

PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_to_various_various_struct4
PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
PREHOOK: Input: default@part_add_to_various_various_struct4@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_to_various_various_struct4
POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
POSTHOOK: Input: default@part_add_to_various_various_struct4@part=2
#### A masked pattern was here ####
insert_num	part	b	s3
1	1	original	{"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
2	1	original	{"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
3	2	new	{"c1":true,"c2":null,"c3":null,"c4":-100,"c5":953967041,"c6":62.07915,"c7":718.78,"c8":1,"c9":"verdict                  ","c10":"verdict","c11":null,"c12":null,"c13":n)گ}
4	1	new	{"c1":false,"c2":-67,"c3":833,"c4":63993,"c5":1255178165,"c6":905071.0,"c7":-4314.7918,"c8":-1240033819,"c9":"trial                    ","c10":"trial","c11":null,"c12":"2016-03-07","c13":n)گ}
PREHOOK: query: drop table part_add_to_various_various_struct4
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_add_to_various_various_struct4
PREHOOK: Output: default@part_add_to_various_various_struct4
POSTHOOK: query: drop table part_add_to_various_various_struct4
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_add_to_various_various_struct4
POSTHOOK: Output: default@part_add_to_various_various_struct4
