PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: TEXTFILE, Non-Vectorized, MapWork, Table
-- NOTE: the use of hive.vectorized.use.row.serde.deserialize above which enables doing
--  vectorized reading of TEXTFILE format files using the row SERDE methods.
--
------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE ADD COLUMNS
--
--
-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--
CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: TEXTFILE, Non-Vectorized, MapWork, Table
-- NOTE: the use of hive.vectorized.use.row.serde.deserialize above which enables doing
--  vectorized reading of TEXTFILE format files using the row SERDE methods.
--
------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE ADD COLUMNS
--
--
-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--
CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_add_int_permute_select
PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@table_add_int_permute_select
POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@table_add_int_permute_select
col_name	data_type	comment
# col_name            	data_type           	comment             
	 	 
insert_num          	int                 	                    
a                   	int                 	                    
b                   	string              	                    
	 	 
# Detailed Table Information	 	 
Database:           	default             	 
#### A masked pattern was here ####
Retention:          	0                   	 
#### A masked pattern was here ####
Table Type:         	MANAGED_TABLE       	 
Table Parameters:	 	 
	COLUMN_STATS_ACCURATE	{\"BASIC_STATS\":\"true\"}
	numFiles            	0                   
	numRows             	0                   
	rawDataSize         	0                   
	totalSize           	0                   
#### A masked pattern was here ####
	 	 
# Storage Information	 	 
SerDe Library:      	org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe	 
InputFormat:        	org.apache.hadoop.mapred.TextInputFormat	 
OutputFormat:       	org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat	 
Compressed:         	No                  	 
Num Buckets:        	-1                  	 
Bucket Columns:     	[]                  	 
Sort Columns:       	[]                  	 
Storage Desc Params:	 	 
	serialization.format	1                   
PREHOOK: query: insert into table table_add_int_permute_select
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: insert into table table_add_int_permute_select
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
POSTHOOK: Output: default@table_add_int_permute_select
POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@table_add_int_permute_select
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@table_add_int_permute_select
POSTHOOK: Output: default@table_add_int_permute_select
PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@table_add_int_permute_select
POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@table_add_int_permute_select
col_name	data_type	comment
# col_name            	data_type           	comment             
	 	 
insert_num          	int                 	                    
a                   	int                 	                    
b                   	string              	                    
c                   	int                 	                    
	 	 
# Detailed Table Information	 	 
Database:           	default             	 
#### A masked pattern was here ####
Retention:          	0                   	 
#### A masked pattern was here ####
Table Type:         	MANAGED_TABLE       	 
Table Parameters:	 	 
#### A masked pattern was here ####
	numFiles            	1                   
	numRows             	4                   
	rawDataSize         	48                  
	totalSize           	52                  
#### A masked pattern was here ####
	 	 
# Storage Information	 	 
SerDe Library:      	org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe	 
InputFormat:        	org.apache.hadoop.mapred.TextInputFormat	 
OutputFormat:       	org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat	 
Compressed:         	No                  	 
Num Buckets:        	-1                  	 
Bucket Columns:     	[]                  	 
Sort Columns:       	[]                  	 
Storage Desc Params:	 	 
	serialization.format	1                   
PREHOOK: query: insert into table table_add_int_permute_select
    values (5, 1, 'new', 10),
           (6, 2, 'new', 20),
           (7, 3, 'new', 30),
           (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: insert into table table_add_int_permute_select
    values (5, 1, 'new', 10),
           (6, 2, 'new', 20),
           (7, 3, 'new', 30),
           (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
POSTHOOK: Output: default@table_add_int_permute_select
POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3
PREHOOK: query: insert into table table_add_int_permute_select
    values (9, 5, 'new', 100),
           (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: insert into table table_add_int_permute_select
    values (9, 5, 'new', 100),
           (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
POSTHOOK: Output: default@table_add_int_permute_select
POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3
PREHOOK: query: explain
select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,a,b from table_add_int_permute_select 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=12)
          Output:["_col0","_col1","_col2"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=12)
              Output:["_col0","_col1","_col2"]
              TableScan [TS_0] (rows=4 width=12)
                default@table_add_int_permute_select,table_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]

PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,a,b from table_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
insert_num	a	b
1	1	original
10	6	new
2	2	original
3	3	original
4	4	original
5	1	new
6	2	new
7	3	new
8	4	new
9	5	new
PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
insert_num	a	b	c
1	1	original	NULL
10	6	new	200
2	2	original	NULL
3	3	original	NULL
4	4	original	NULL
5	1	new	10
6	2	new	20
7	3	new	30
8	4	new	40
9	5	new	100
PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
insert_num	c
1	NULL
10	200
2	NULL
3	NULL
4	NULL
5	10
6	20
7	30
8	40
9	100
PREHOOK: query: drop table table_add_int_permute_select
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_add_int_permute_select
PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: drop table table_add_int_permute_select
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_add_int_permute_select
POSTHOOK: Output: default@table_add_int_permute_select
PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--
CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--
CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_add_int_string_permute_select
PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@table_add_int_string_permute_select
POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@table_add_int_string_permute_select
col_name	data_type	comment
# col_name            	data_type           	comment             
	 	 
insert_num          	int                 	                    
a                   	int                 	                    
b                   	string              	                    
	 	 
# Detailed Table Information	 	 
Database:           	default             	 
#### A masked pattern was here ####
Retention:          	0                   	 
#### A masked pattern was here ####
Table Type:         	MANAGED_TABLE       	 
Table Parameters:	 	 
	COLUMN_STATS_ACCURATE	{\"BASIC_STATS\":\"true\"}
	numFiles            	0                   
	numRows             	0                   
	rawDataSize         	0                   
	totalSize           	0                   
#### A masked pattern was here ####
	 	 
# Storage Information	 	 
SerDe Library:      	org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe	 
InputFormat:        	org.apache.hadoop.mapred.TextInputFormat	 
OutputFormat:       	org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat	 
Compressed:         	No                  	 
Num Buckets:        	-1                  	 
Bucket Columns:     	[]                  	 
Sort Columns:       	[]                  	 
Storage Desc Params:	 	 
	serialization.format	1                   
PREHOOK: query: insert into table table_add_int_string_permute_select
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: insert into table table_add_int_string_permute_select
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
POSTHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table table_add_int_string_permute_select add columns(c int, d string)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@table_add_int_string_permute_select
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table table_add_int_string_permute_select add columns(c int, d string)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@table_add_int_string_permute_select
POSTHOOK: Output: default@table_add_int_string_permute_select
PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@table_add_int_string_permute_select
POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@table_add_int_string_permute_select
col_name	data_type	comment
# col_name            	data_type           	comment             
	 	 
insert_num          	int                 	                    
a                   	int                 	                    
b                   	string              	                    
c                   	int                 	                    
d                   	string              	                    
	 	 
# Detailed Table Information	 	 
Database:           	default             	 
#### A masked pattern was here ####
Retention:          	0                   	 
#### A masked pattern was here ####
Table Type:         	MANAGED_TABLE       	 
Table Parameters:	 	 
#### A masked pattern was here ####
	numFiles            	1                   
	numRows             	4                   
	rawDataSize         	48                  
	totalSize           	52                  
#### A masked pattern was here ####
	 	 
# Storage Information	 	 
SerDe Library:      	org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe	 
InputFormat:        	org.apache.hadoop.mapred.TextInputFormat	 
OutputFormat:       	org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat	 
Compressed:         	No                  	 
Num Buckets:        	-1                  	 
Bucket Columns:     	[]                  	 
Sort Columns:       	[]                  	 
Storage Desc Params:	 	 
	serialization.format	1                   
PREHOOK: query: insert into table table_add_int_string_permute_select
    values (5, 1, 'new', 10, 'ten'),
           (6, 2, 'new', 20, 'twenty'),
           (7, 3, 'new', 30, 'thirty'),
           (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: insert into table table_add_int_string_permute_select
    values (5, 1, 'new', 10, 'ten'),
           (6, 2, 'new', 20, 'twenty'),
           (7, 3, 'new', 30, 'thirty'),
           (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
POSTHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: insert into table table_add_int_string_permute_select
    values (9, 5, 'new', 100, 'hundred'),
           (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: insert into table table_add_int_string_permute_select
    values (9, 5, 'new', 100, 'hundred'),
           (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
POSTHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,a,b from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,a,b from table_add_int_string_permute_select 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=12)
          Output:["_col0","_col1","_col2"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=12)
              Output:["_col0","_col1","_col2"]
              TableScan [TS_0] (rows=4 width=12)
                default@table_add_int_string_permute_select,table_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]

PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,a,b from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,a,b from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	a	b
1	1	original
10	6	new
2	2	original
3	3	original
4	4	original
5	1	new
6	2	new
7	3	new
8	4	new
9	5	new
PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	a	b	c
1	1	original	NULL
10	6	new	200
2	2	original	NULL
3	3	original	NULL
4	4	original	NULL
5	1	new	10
6	2	new	20
7	3	new	30
8	4	new	40
9	5	new	100
PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	a	b	c	d
1	1	original	NULL	NULL
10	6	new	200	two hundred
2	2	original	NULL	NULL
3	3	original	NULL	NULL
4	4	original	NULL	NULL
5	1	new	10	ten
6	2	new	20	twenty
7	3	new	30	thirty
8	4	new	40	forty
9	5	new	100	hundred
PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	a	c	d
1	1	NULL	NULL
10	6	200	two hundred
2	2	NULL	NULL
3	3	NULL	NULL
4	4	NULL	NULL
5	1	10	ten
6	2	20	twenty
7	3	30	thirty
8	4	40	forty
9	5	100	hundred
PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	a	d
1	1	NULL
10	6	two hundred
2	2	NULL
3	3	NULL
4	4	NULL
5	1	ten
6	2	twenty
7	3	thirty
8	4	forty
9	5	hundred
PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	c
1	NULL
10	200
2	NULL
3	NULL
4	NULL
5	10
6	20
7	30
8	40
9	100
PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_add_int_string_permute_select
#### A masked pattern was here ####
insert_num	d
1	NULL
10	two hundred
2	NULL
3	NULL
4	NULL
5	ten
6	twenty
7	thirty
8	forty
9	hundred
PREHOOK: query: drop table table_add_int_string_permute_select
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_add_int_string_permute_select
PREHOOK: Output: default@table_add_int_string_permute_select
POSTHOOK: query: drop table table_add_int_string_permute_select
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_add_int_string_permute_select
POSTHOOK: Output: default@table_add_int_string_permute_select
PREHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
--
CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
--
CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_string_group_double
PREHOOK: query: insert into table table_change_string_group_double
    values (1, '753.7028', '753.7028', '753.7028', 'original'),
           (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
           (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
           (4, '-10.3', '-10.3', '-10.3', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__7
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: insert into table table_change_string_group_double
    values (1, '753.7028', '753.7028', '753.7028', 'original'),
           (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
           (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
           (4, '-10.3', '-10.3', '-10.3', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__7
POSTHOOK: Output: default@table_change_string_group_double
POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_string_group_double
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_string_group_double
POSTHOOK: Output: default@table_change_string_group_double
PREHOOK: query: insert into table table_change_string_group_double
    values (5, 30.774, 30.774, 30.774, 'new'),
           (6, 20.31, 20.31, 20.31, 'new'),
           (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
           (8, -66475.561431, -66475.561431, -66475.561431, 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__8
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: insert into table table_change_string_group_double
    values (5, 30.774, 30.774, 30.774, 'new'),
           (6, 20.31, 20.31, 20.31, 'new'),
           (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
           (8, -66475.561431, -66475.561431, -66475.561431, 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__8
POSTHOOK: Output: default@table_change_string_group_double
POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: insert into table table_change_string_group_double
    values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
           (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__9
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: insert into table table_change_string_group_double
    values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
           (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__9
POSTHOOK: Output: default@table_change_string_group_double
POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_double 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_string_group_double,table_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_double
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_double
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	753.7028	753.7028	753.7028	original
10	9250340.75	9250340.75	9250340.75	new
2	-3651.672121	-3651.672121	-3651.672121	original
3	-29.0764	-29.0764	-29.0764	original
4	-10.3	-10.3	-10.3	original
5	30.774	30.774	30.774	new
6	20.31	20.31	20.31	new
7	46114.284799488	46114.284799488	46114.284799488	new
8	-66475.561431	-66475.561431	-66475.561431	new
9	17808.963785	17808.963785	17808.963785	new
PREHOOK: query: drop table table_change_string_group_double
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_string_group_double
PREHOOK: Output: default@table_change_string_group_double
POSTHOOK: query: drop table table_change_string_group_double
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_string_group_double
POSTHOOK: Output: default@table_change_string_group_double
PREHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
           (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
           (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__10
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
           (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
           (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__10
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_date_group_string_group_timestamp
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
           (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
           (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
           (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__11
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
           (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
           (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
           (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__11
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
           (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__12
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
    values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
           (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__12
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=3 width=150)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=3 width=150)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
              TableScan [TS_0] (rows=3 width=150)
                default@table_change_date_group_string_group_timestamp,table_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_date_group_string_group_timestamp
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	b
1	2000-12-18 08:42:30.000595596	2000-12-18 08:42:30.000595596                     	2000-12-18 08:4	2000-12-18 08:42:30.000595596	2000-12-18 08:4	original
2	2024-11-11 16:42:41.101	2024-11-11 16:42:41.101                           	2024-11-11 16:4	2024-11-11 16:42:41.101	2024-11-11 16:4	original
3	2021-09-24 03:18:32.413655165	2021-09-24 03:18:32.413655165                     	2021-09-24 03:1	2021-09-24 03:18:32.413655165	2021-09-24 03:1	original
4	0004-09-22 18:26:29.519542222	0004-09-22 18:26:29.519542222                     	0004-09-22 18:2	0004-09-22 18:26:29.519542222	0004-09-22 18:2	new
5	1815-05-06 00:12:37.543584705	1815-05-06 00:12:37.543584705                     	1815-05-06 00:1	1815-05-06 00:12:37.543584705	1815-05-06 00:1	new
6	2007-02-09 05:17:29.368756876	2007-02-09 05:17:29.368756876                     	2007-02-09 05:1	2007-02-09 05:17:29.368756876	2007-02-09 05:1	new
7	2002-05-10 05:29:48.990818073	2002-05-10 05:29:48.990818073                     	2002-05-10 05:2	2002-05-10 05:29:48.990818073	2002-05-10 05:2	new
8	6229-06-28 02:54:28.970117179	6229-06-28 02:54:28.970117179                     	6229-06-28 02:5	6229-06-28 02:54:28.970117179	6229-06-28 02:5	new
9	5966-07-09 03:30:50.597	5966-07-09 03:30:50.597                           	5966-07-09 03:3	5966-07-09 03:30:50.597	5966-07-09 03:3	new
PREHOOK: query: drop table table_change_date_group_string_group_timestamp
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_date_group_string_group_timestamp
PREHOOK: Output: default@table_change_date_group_string_group_timestamp
POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_date_group_string_group_date
PREHOOK: query: insert into table table_change_date_group_string_group_date
    values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
           (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
           (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__13
PREHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: query: insert into table table_change_date_group_string_group_date
    values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
           (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
           (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__13
POSTHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_date_group_string_group_date
PREHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_date_group_string_group_date
POSTHOOK: Output: default@table_change_date_group_string_group_date
PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@table_change_date_group_string_group_date
POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@table_change_date_group_string_group_date
col_name	data_type	comment
# col_name            	data_type           	comment             
	 	 
insert_num          	int                 	                    
c1                  	string              	                    
c2                  	char(50)            	                    
c3                  	char(15)            	                    
c4                  	varchar(50)         	                    
c5                  	varchar(15)         	                    
b                   	string              	                    
	 	 
# Detailed Table Information	 	 
Database:           	default             	 
#### A masked pattern was here ####
Retention:          	0                   	 
#### A masked pattern was here ####
Table Type:         	MANAGED_TABLE       	 
Table Parameters:	 	 
#### A masked pattern was here ####
	numFiles            	1                   
	numRows             	3                   
	rawDataSize         	195                 
	totalSize           	198                 
#### A masked pattern was here ####
	 	 
# Storage Information	 	 
SerDe Library:      	org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe	 
InputFormat:        	org.apache.hadoop.mapred.TextInputFormat	 
OutputFormat:       	org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat	 
Compressed:         	No                  	 
Num Buckets:        	-1                  	 
Bucket Columns:     	[]                  	 
Sort Columns:       	[]                  	 
Storage Desc Params:	 	 
	serialization.format	1                   
PREHOOK: query: insert into table table_change_date_group_string_group_date
    values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
           (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
           (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
           (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
           (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
           (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__14
PREHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: query: insert into table table_change_date_group_string_group_date
    values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
           (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
           (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
           (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
           (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
           (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__14
POSTHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=3 width=65)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=3 width=65)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
              TableScan [TS_0] (rows=3 width=65)
                default@table_change_date_group_string_group_date,table_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_date_group_string_group_date
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_date_group_string_group_date
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	b
1	2000-12-18	2000-12-18                                        	2000-12-18     	2000-12-18	2000-12-18	original
2	2024-11-11	2024-11-11                                        	2024-11-11     	2024-11-11	2024-11-11	original
3	2021-09-24	2021-09-24                                        	2021-09-24     	2021-09-24	2021-09-24	original
4	0004-09-22	0004-09-22                                        	0004-09-22     	0004-09-22	0004-09-22	new
5	1815-05-06	1815-05-06                                        	1815-05-06     	1815-05-06	1815-05-06	new
6	2007-02-09	2007-02-09                                        	2007-02-09     	2007-02-09	2007-02-09	new
7	2002-05-10	2002-05-10                                        	2002-05-10     	2002-05-10	2002-05-10	new
8	6229-06-28	6229-06-28                                        	6229-06-28     	6229-06-28	6229-06-28	new
9	5966-07-09	5966-07-09                                        	5966-07-09     	5966-07-09	5966-07-09	new
PREHOOK: query: drop table table_change_date_group_string_group_date
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_date_group_string_group_date
PREHOOK: Output: default@table_change_date_group_string_group_date
POSTHOOK: query: drop table table_change_date_group_string_group_date
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_date_group_string_group_date
POSTHOOK: Output: default@table_change_date_group_string_group_date
PREHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__15
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__15
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__16
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__16
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_numeric_group_string_group_multi_ints_string,table_change_numeric_group_string_group_multi_ints_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
10	17	90000	754072151	3289094	new
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
5	2000	72909	3244222	-93222	new
6	1	200	2323322	5430907	new
7	256	32768	31889	470614135	new
8	5555	40000	-719017797	810662019	new
9	100	5000	5443	0	new
PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__17
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__17
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__18
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__18
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_numeric_group_string_group_multi_ints_char,table_change_numeric_group_string_group_multi_ints_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45                                                	1000                                              	483777                                            	-23866739993                                      	original
10	17                                                	90000                                             	754072151                                         	3289094                                           	new
2	-2                                                	-6737                                             	56                                                	28899333                                          	original
3	NULL	4957                                              	832222222                                         	9000000000                                        	original
4	0                                                 	20435                                             	847492223                                         	-999999999999                                     	original
5	2000                                              	72909                                             	3244222                                           	-93222                                            	new
6	1                                                 	200                                               	2323322                                           	5430907                                           	new
7	256                                               	32768                                             	31889                                             	470614135                                         	new
8	5555                                              	40000                                             	-719017797                                        	810662019                                         	new
9	100                                               	5000                                              	5443                                              	0                                                 	new
PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__19
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__19
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__20
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__20
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_numeric_group_string_group_multi_ints_char_trunc,table_change_numeric_group_string_group_multi_ints_char_trunc,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45   	1000 	48377	-2386	original
10	17   	90000	75407	32890	new
2	-2   	-6737	56   	28899	original
3	NULL	4957 	83222	90000	original
4	0    	20435	84749	-9999	original
5	2000 	72909	32442	-9322	new
6	1    	200  	23233	54309	new
7	256  	32768	31889	47061	new
8	5555 	40000	-7190	81066	new
9	100  	5000 	5443 	0    	new
PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__21
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__21
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__22
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__22
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_numeric_group_string_group_multi_ints_varchar,table_change_numeric_group_string_group_multi_ints_varchar,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
10	17	90000	754072151	3289094	new
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
5	2000	72909	3244222	-93222	new
6	1	200	2323322	5430907	new
7	256	32768	31889	470614135	new
8	5555	40000	-719017797	810662019	new
9	100	5000	5443	0	new
PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__23
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
    values (1, 45, 1000, 483777, -23866739993, 'original'),
           (2, -2, -6737, 56, 28899333, 'original'),
           (3, -255, 4957, 832222222, 9000000000, 'original'),
           (4, 0, 20435, 847492223, -999999999999, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__23
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.b SIMPLE [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c1 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c2 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c3 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c4 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.insert_num EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	483777	-23866739993	original
2	-2	-6737	56	28899333	original
3	NULL	4957	832222222	9000000000	original
4	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__24
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
    values (5, '2000', '72909', '3244222', '-93222', 'new'),
           (6, '1', '200', '2323322', '5430907', 'new'),
           (7, '256', '32768', '31889', '470614135', 'new'),
           (8, '5555', '40000', '-719017797', '810662019', 'new'),
           (9, '100', '5000', '5443', '0', 'new'),
           (10, '17', '90000', '754072151', '3289094', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__24
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.b SIMPLE [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c1 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c2 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c3 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.c4 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar_trunc.insert_num EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=37)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=37)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=37)
                default@table_change_numeric_group_string_group_multi_ints_varchar_trunc,table_change_numeric_group_string_group_multi_ints_varchar_trunc,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	45	1000	48377	-2386	original
10	17	90000	75407	32890	new
2	-2	-6737	56	28899	original
3	NULL	4957	83222	90000	original
4	0	20435	84749	-9999	original
5	2000	72909	32442	-9322	new
6	1	200	23233	54309	new
7	256	32768	31889	47061	new
8	5555	40000	-7190	81066	new
9	100	5000	5443	0	new
PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
--
CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
--
CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_string
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, - 832222222, 255, 4957,'original'),
           (4, 847492223, 0, 20435, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__25
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_string
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, - 832222222, 255, 4957,'original'),
           (4, 847492223, 0, 20435, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__25
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.b SIMPLE [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c1 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c2 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c3 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.insert_num EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	-10.300000000000000000	-2.0	-29.0764	original
3	-832222222.000000000000000000	255.0	4957.0	original
4	847492223.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_string
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__26
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_string
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__26
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.b SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c1 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c2 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.c3 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string.insert_num EXPRESSION [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=53)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=53)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=53)
                default@table_change_numeric_group_string_group_floating_string,table_change_numeric_group_string_group_floating_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000	753.7028	-3651.672121	original
10	17	90000	754072151	new
2	-10.300000000000000000	-2.0	-29.0764	original
3	-832222222.000000000000000000	255.0	4957.0	original
4	847492223.000000000000000000	0.0	20435.0	original
5	30.774	20.31	46114.284799488	new
6	-66475.561431	52927714	7203778961	new
7	256	32768	31889	new
8	5555	40000	-719017797	new
9	100	5000	5443	new
PREHOOK: query: drop table table_change_numeric_group_string_group_floating_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
--
CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
--
CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_char
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3,  9000000000, -255, 4957,'original'),
           (4, -999999999999, 0, 20435, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__27
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_char
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3,  9000000000, -255, 4957,'original'),
           (4, -999999999999, 0, 20435, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__27
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.b SIMPLE [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c1 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c2 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c3 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.insert_num EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	-10.300000000000000000	-2.0	-29.0764	original
3	9000000000.000000000000000000	-255.0	4957.0	original
4	-999999999999.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_char
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__28
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_char
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__28
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.b SIMPLE [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c1 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c2 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.c3 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char.insert_num EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=55)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=55)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=55)
                default@table_change_numeric_group_string_group_floating_char,table_change_numeric_group_string_group_floating_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000                   	753.7028                                          	-3651.672121                                      	original
10	17                                                	90000                                             	754072151                                         	new
2	-10.300000000000000000                            	-2.0                                              	-29.0764                                          	original
3	9000000000.000000000000000000                     	-255.0                                            	4957.0                                            	original
4	-999999999999.000000000000000000                  	0.0                                               	20435.0                                           	original
5	30.774                                            	20.31                                             	46114.284799488                                   	new
6	-66475.561431                                     	52927714                                          	7203778961                                        	new
7	256                                               	32768                                             	31889                                             	new
8	5555                                              	40000                                             	-719017797                                        	new
9	100                                               	5000                                              	5443                                              	new
PREHOOK: query: drop table table_change_numeric_group_string_group_floating_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_char_trunc
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 832222222, -255, 4957, 'original'),
           (4, 847492223, 0, 20435, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__29
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_char_trunc
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 832222222, -255, 4957, 'original'),
           (4, 847492223, 0, 20435, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__29
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.b SIMPLE [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c1 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c2 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c3 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.insert_num EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	-10.300000000000000000	-2.0	-29.0764	original
3	832222222.000000000000000000	-255.0	4957.0	original
4	847492223.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_char_trunc
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__30
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_char_trunc
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__30
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.b SIMPLE [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c1 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c2 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.c3 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_char_trunc.insert_num EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=53)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=53)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=53)
                default@table_change_numeric_group_string_group_floating_char_trunc,table_change_numeric_group_string_group_floating_char_trunc,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-238667	753.702	-3651.6	original
10	17     	90000  	7540721	new
2	-10.300	-2.0   	-29.076	original
3	8322222	-255.0 	4957.0 	original
4	8474922	0.0    	20435.0	original
5	30.774 	20.31  	46114.2	new
6	-66475.	5292771	7203778	new
7	256    	32768  	31889  	new
8	5555   	40000  	-719017	new
9	100    	5000   	5443   	new
PREHOOK: query: drop table table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_char_trunc
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
--
CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
--
CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 9000000000, -255, 4957, 'original'),
           (4, -999999999999, 0, 20435, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__31
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 9000000000, -255, 4957, 'original'),
           (4, -999999999999, 0, 20435, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__31
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.b SIMPLE [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c1 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c2 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c3 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.insert_num EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-2.38667407E10	753.7028	-3651.672121000000000000	original
2	-10.3	-2.0	-29.076400000000000000	original
3	8.9999995E9	-255.0	4957.000000000000000000	original
4	-1.0E12	0.0	20435.000000000000000000	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__32
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__32
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.b SIMPLE [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c1 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c2 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.c3 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar.insert_num EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=50)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=50)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=50)
                default@table_change_numeric_group_string_group_floating_varchar,table_change_numeric_group_string_group_floating_varchar,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-2.38667407E10	753.7028	-3651.672121000000000000	original
10	17	90000	754072151	new
2	-10.3	-2.0	-29.076400000000000000	original
3	8.9999995E9	-255.0	4957.000000000000000000	original
4	-1.0E12	0.0	20435.000000000000000000	original
5	30.774	20.31	46114.284799488	new
6	-66475.561431	52927714	7203778961	new
7	256	32768	31889	new
8	5555	40000	-719017797	new
9	100	5000	5443	new
PREHOOK: query: drop table table_change_numeric_group_string_group_floating_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
--
CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar_trunc
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 9000000000, -255, 4957, 'original'),
           (4, -999999999999, 0, 20435, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__33
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar_trunc
    values (1, -23866739993, 753.7028, -3651.672121, 'original'),
           (2, -10.3, -2, -29.0764, 'original'),
           (3, 9000000000, -255, 4957, 'original'),
           (4, -999999999999, 0, 20435, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__33
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.b SIMPLE [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c1 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c2 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c3 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.insert_num EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	-10.300000000000000000	-2.0	-29.0764	original
3	9000000000.000000000000000000	-255.0	4957.0	original
4	-999999999999.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar_trunc
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__34
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_varchar_trunc
    values (5, '30.774', '20.31', '46114.284799488', 'new'),
           (6, '-66475.561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__34
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.b SIMPLE [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c1 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c2 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.c3 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_varchar_trunc.insert_num EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=55)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=55)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=55)
                default@table_change_numeric_group_string_group_floating_varchar_trunc,table_change_numeric_group_string_group_floating_varchar_trunc,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	-238667	753.702	-3651.6	original
10	17	90000	7540721	new
2	-10.300	-2.0	-29.076	original
3	9000000	-255.0	4957.0	original
4	-999999	0.0	20435.0	original
5	30.774	20.31	46114.2	new
6	-66475.	5292771	7203778	new
7	256	32768	31889	new
8	5555	40000	-719017	new
9	100	5000	5443	new
PREHOOK: query: drop table table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_string_group_string_group_string
PREHOOK: query: insert into table table_change_string_group_string_group_string
    values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__35
PREHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: query: insert into table table_change_string_group_string_group_string
    values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__35
POSTHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: Lineage: table_change_string_group_string_group_string.b SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c1 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c2 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c3 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c4 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.insert_num EXPRESSION [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	escapist	escapist	escapist	escapist	original
2	heartbeat	heartbeat	heartbeat	heartbeat	original
3	dynamic reptile	dynamic reptile	dynamic reptile	dynamic reptile	original
4	blank pads   	blank pads   	blank pads   	blank pads   	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_string_group_string_group_string
PREHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_string_group_string_group_string
POSTHOOK: Output: default@table_change_string_group_string_group_string
PREHOOK: query: insert into table table_change_string_group_string_group_string
    values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'bottom  ', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__36
PREHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: query: insert into table table_change_string_group_string_group_string
    values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'bottom  ', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__36
POSTHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: Lineage: table_change_string_group_string_group_string.b SIMPLE [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c1 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c2 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c3 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.c4 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_string.insert_num EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=59)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=59)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=59)
                default@table_change_string_group_string_group_string,table_change_string_group_string_group_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_string
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_string
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	escapist                                          	escapist 	escapist	escapist 	original
10	bottom                                            	bottom   	bottom  	bottom   	new
2	heartbeat                                         	heartbeat	heartbeat	heartbeat	original
3	dynamic reptile                                   	dynamic r	dynamic reptile	dynamic r	original
4	blank pads                                        	blank pad	blank pads   	blank pad	original
5	junkyard                                          	junkyard 	junkyard	junkyard 	new
6	  baffling                                        	  bafflin	  baffling    	  bafflin	new
7	           featherweight                          	         	           featherweight  	         	new
8	  against                                         	  against	  against	  against	new
9	hangar paralysed companion                        	hangar pa	hangar paralysed companion 	hangar pa	new
PREHOOK: query: drop table table_change_string_group_string_group_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_string_group_string_group_string
PREHOOK: Output: default@table_change_string_group_string_group_string
POSTHOOK: query: drop table table_change_string_group_string_group_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_string_group_string_group_string
POSTHOOK: Output: default@table_change_string_group_string_group_string
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
--
CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
--
CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_string_group_string_group_char
PREHOOK: query: insert into table table_change_string_group_string_group_char
    values (1, 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__37
PREHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: query: insert into table table_change_string_group_string_group_char
    values (1, 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__37
POSTHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: Lineage: table_change_string_group_string_group_char.b SIMPLE [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c1 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c2 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c3 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.insert_num EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	escapist                                          	escapist                                          	escapist                                          	original
2	heartbeat                                         	heartbeat                                         	heartbeat                                         	original
3	dynamic reptile                                   	dynamic reptile                                   	dynamic reptile                                   	original
4	blank pads                                        	blank pads                                        	blank pads                                        	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_string_group_string_group_char
PREHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_string_group_string_group_char
POSTHOOK: Output: default@table_change_string_group_string_group_char
PREHOOK: query: insert into table table_change_string_group_string_group_char
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__38
PREHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: query: insert into table table_change_string_group_string_group_char
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__38
POSTHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: Lineage: table_change_string_group_string_group_char.b SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c1 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c2 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.c3 SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_char.insert_num EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=44)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=44)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=44)
                default@table_change_string_group_string_group_char,table_change_string_group_string_group_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_char
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_char
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	escapist	escapist	escapist	original
10	bottom  	bottom  	bottom  	new
2	heartbeat	heartbeat	heartbeat	original
3	dynamic reptile	dynamic r	dynamic reptile	original
4	blank pads	blank pad	blank pads	original
5	junkyard	junkyard	junkyard	new
6	  baffling    	  bafflin	  baffling    	new
7	           featherweight  	         	           featherweight  	new
8	  against	  against	  against	new
9	hangar paralysed companion 	hangar pa	hangar paralysed companion 	new
PREHOOK: query: drop table table_change_string_group_string_group_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_string_group_string_group_char
PREHOOK: Output: default@table_change_string_group_string_group_char
POSTHOOK: query: drop table table_change_string_group_string_group_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_string_group_string_group_char
POSTHOOK: Output: default@table_change_string_group_string_group_char
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
--
CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
--
CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_string_group_string_group_varchar
PREHOOK: query: insert into table table_change_string_group_string_group_varchar
    values (1, 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__39
PREHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: query: insert into table table_change_string_group_string_group_varchar
    values (1, 'escapist', 'escapist', 'escapist', 'original'),
           (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
           (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
           (4, 'blank pads   ', 'blank pads   ', 'blank pads   ', 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__39
POSTHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.b SIMPLE [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c1 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c2 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c3 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.insert_num EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	escapist	escapist	escapist	original
2	heartbeat	heartbeat	heartbeat	original
3	dynamic reptile	dynamic reptile	dynamic reptile	original
4	blank pads   	blank pads   	blank pads   	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_string_group_string_group_varchar
PREHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_string_group_string_group_varchar
POSTHOOK: Output: default@table_change_string_group_string_group_varchar
PREHOOK: query: insert into table table_change_string_group_string_group_varchar
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__40
PREHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: query: insert into table table_change_string_group_string_group_varchar
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new'),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new'),
           (8, '  against', '  against', '  against', 'new'),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__40
POSTHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.b SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c1 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c2 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.c3 SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_string_group_string_group_varchar.insert_num EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=46)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=46)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=46)
                default@table_change_string_group_string_group_varchar,table_change_string_group_string_group_varchar,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_string_group_string_group_varchar
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_string_group_string_group_varchar
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	escapist                                          	escapist 	escapist	original
10	bottom                                            	bottom   	bottom  	new
2	heartbeat                                         	heartbeat	heartbeat	original
3	dynamic reptile                                   	dynamic r	dynamic reptile	original
4	blank pads                                        	blank pad	blank pads   	original
5	junkyard                                          	junkyard 	junkyard	new
6	  baffling                                        	  bafflin	  baffling    	new
7	           featherweight                          	         	           featherweight  	new
8	  against                                         	  against	  against	new
9	hangar paralysed companion                        	hangar pa	hangar paralysed companion 	new
PREHOOK: query: drop table table_change_string_group_string_group_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_string_group_string_group_varchar
PREHOOK: Output: default@table_change_string_group_string_group_varchar
POSTHOOK: query: drop table table_change_string_group_string_group_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_string_group_string_group_varchar
POSTHOOK: Output: default@table_change_string_group_string_group_varchar
PREHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: ------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
--
--
--
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_tinyint
    values (1, 45, 45, 45, 45, 45, 45, 'original'),
           (2, -2, -2, -2, -2, -2, -2, 'original'),
           (3, -255, -255, -255, -255, -255, -255, 'original'),
           (4, 100, 100, 100, 100, 100, 100, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__41
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_tinyint
    values (1, 45, 45, 45, 45, 45, 45, 'original'),
           (2, -2, -2, -2, -2, -2, -2, 'original'),
           (3, -255, -255, -255, -255, -255, -255, 'original'),
           (4, 100, 100, 100, 100, 100, 100, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__41
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.b SIMPLE [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c1 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c2 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c3 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c4 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c5 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c6 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.insert_num EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6	_col7
PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	c6	b
1	45	45	45	45	45	45	original
2	-2	-2	-2	-2	-2	-2	original
3	NULL	NULL	NULL	NULL	NULL	NULL	original
4	100	100	100	100	100	100	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_tinyint
    values (5, '774', '2031', '200', '12', '99', '0', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', '7', '6', 'new'),
           (7, '256', '32768', '31889', '300', '444', '506', 'new'),
           (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
           (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
           (10, '17', '90000', '754072151', '95', '20', '18', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__42
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_tinyint
    values (5, '774', '2031', '200', '12', '99', '0', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', '7', '6', 'new'),
           (7, '256', '32768', '31889', '300', '444', '506', 'new'),
           (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
           (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
           (10, '17', '90000', '754072151', '95', '20', '18', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__42
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.b SIMPLE [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c1 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c2 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c3 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c4 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c5 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.c6 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_tinyint.insert_num EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6	_col7
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=29)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=29)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
              TableScan [TS_0] (rows=4 width=29)
                default@table_change_lower_to_higher_numeric_group_tinyint,table_change_lower_to_higher_numeric_group_tinyint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	c6	b
1	45	45	45	45.000000000000000000	45.0	45.0	original
10	17	90000	754072151	95.000000000000000000	20.0	18.0	new
2	-2	-2	-2	-2.000000000000000000	-2.0	-2.0	original
3	NULL	NULL	NULL	NULL	NULL	NULL	original
4	100	100	100	100.000000000000000000	100.0	100.0	original
5	774	2031	200	12.000000000000000000	99.0	0.0	new
6	NULL	52927714	7203778961	8.000000000000000000	7.0	6.0	new
7	256	32768	31889	300.000000000000000000	444.0	506.0	new
8	5555	40000	-719017797	45.000000000000000000	55.0	65.0	new
9	100	5000	5443	22.000000000000000000	2.0	-2.0	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_tinyint
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_smallint
    values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
           (2, -2, -2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, -5000, -5000, 'original'),
           (4, 100, 100, 100, 100, 100, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__43
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_smallint
    values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
           (2, -2, -2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, -5000, -5000, 'original'),
           (4, 100, 100, 100, 100, 100, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__43
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.b SIMPLE [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c1 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c2 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c3 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c4 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c5 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.insert_num EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	b
1	2031	2031	2031	2031	2031	original
2	-2	-2	-2	-2	-2	original
3	-5000	-5000	-5000	-5000	-5000	original
4	100	100	100	100	100	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_smallint
    values (5, '774', '2031', '200', '12', '99', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', '7', 'new'),
           (7, '256', '32768', '31889', '300', '444', 'new'),
           (8, '5555', '40000', '-719017797', '45', '55', 'new'),
           (9, '100', '5000', '5443', '22', '2', 'new'),
           (10, '17', '90000', '754072151', '95', '20', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__44
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_smallint
    values (5, '774', '2031', '200', '12', '99', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', '7', 'new'),
           (7, '256', '32768', '31889', '300', '444', 'new'),
           (8, '5555', '40000', '-719017797', '45', '55', 'new'),
           (9, '100', '5000', '5443', '22', '2', 'new'),
           (10, '17', '90000', '754072151', '95', '20', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__44
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.b SIMPLE [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c1 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c2 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c3 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c4 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.c5 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_smallint.insert_num EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5	_col6
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=32)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=32)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
              TableScan [TS_0] (rows=4 width=32)
                default@table_change_lower_to_higher_numeric_group_smallint,table_change_lower_to_higher_numeric_group_smallint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	c5	b
1	2031	2031	2031.000000000000000000	2031.0	2031.0	original
10	17	90000	754072151.000000000000000000	95.0	20.0	new
2	-2	-2	-2.000000000000000000	-2.0	-2.0	original
3	-5000	-5000	-5000.000000000000000000	-5000.0	-5000.0	original
4	100	100	100.000000000000000000	100.0	100.0	original
5	774	2031	200.000000000000000000	12.0	99.0	new
6	561431	52927714	7203778961.000000000000000000	8.0	7.0	new
7	256	32768	31889.000000000000000000	300.0	444.0	new
8	5555	40000	-719017797.000000000000000000	45.0	55.0	new
9	100	5000	5443.000000000000000000	22.0	2.0	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_smallint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_smallint
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_int
    values (1, 2031, 2031, 2031, 2031, 'original'),
           (2, -2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 52927714, 52927714, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__45
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_int
    values (1, 2031, 2031, 2031, 2031, 'original'),
           (2, -2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 52927714, 52927714, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__45
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.b SIMPLE [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c1 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c2 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c3 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c4 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.insert_num EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	2031	2031	2031	2031	original
2	-2	-2	-2	-2	original
3	-5000	-5000	-5000	-5000	original
4	52927714	52927714	52927714	52927714	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE,  b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE,  b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_int
    values (5, '774', '2031', '200', '12', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', 'new'),
           (7, '256', '32768', '31889', '300', 'new'),
           (8, '5555', '40000', '-719017797', '45', 'new'),
           (9, '100', '5000', '5443', '22', 'new'),
           (10, '17', '90000', '754072151', '95', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__46
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_int
    values (5, '774', '2031', '200', '12', 'new'),
           (6, '561431', '52927714', '7203778961',  '8', 'new'),
           (7, '256', '32768', '31889', '300', 'new'),
           (8, '5555', '40000', '-719017797', '45', 'new'),
           (9, '100', '5000', '5443', '22', 'new'),
           (10, '17', '90000', '754072151', '95', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__46
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.b SIMPLE [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c1 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c2 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c3 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.c4 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_int.insert_num EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=33)
          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=33)
              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
              TableScan [TS_0] (rows=4 width=33)
                default@table_change_lower_to_higher_numeric_group_int,table_change_lower_to_higher_numeric_group_int,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]

PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
#### A masked pattern was here ####
insert_num	c1	c2	c3	c4	b
1	2031	2031.000000000000000000	2031.0	2031.0	original
10	17	90000.000000000000000000	7.5407213E8	95.0	new
2	-2	-2.000000000000000000	-2.0	-2.0	original
3	-5000	-5000.000000000000000000	-5000.0	-5000.0	original
4	52927714	52927714.000000000000000000	5.2927712E7	5.2927714E7	original
5	774	2031.000000000000000000	200.0	12.0	new
6	561431	52927714.000000000000000000	7.2037791E9	8.0	new
7	256	32768.000000000000000000	31889.0	300.0	new
8	5555	40000.000000000000000000	-7.1901779E8	45.0	new
9	100	5000.000000000000000000	5443.0	22.0	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_int
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_int
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_int
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_int
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_bigint
    values (1, 7203778961, 7203778961, 7203778961, 'original'),
           (2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 52927714, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__47
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_bigint
    values (1, 7203778961, 7203778961, 7203778961, 'original'),
           (2, -2, -2, -2, 'original'),
           (3, -5000, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 52927714, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__47
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.b SIMPLE [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c1 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c2 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c3 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.insert_num EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	7203778961	7203778961	7203778961	original
2	-2	-2	-2	original
3	-5000	-5000	-5000	original
4	52927714	52927714	52927714	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_bigint
    values (5, '774', '2031', '200', 'new'),
           (6, '561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__48
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_bigint
    values (5, '774', '2031', '200', 'new'),
           (6, '561431', '52927714', '7203778961', 'new'),
           (7, '256', '32768', '31889', 'new'),
           (8, '5555', '40000', '-719017797', 'new'),
           (9, '100', '5000', '5443', 'new'),
           (10, '17', '90000', '754072151', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__48
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.b SIMPLE [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c1 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c2 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.c3 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_bigint.insert_num EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=31)
          Output:["_col0","_col1","_col2","_col3","_col4"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=31)
              Output:["_col0","_col1","_col2","_col3","_col4"]
              TableScan [TS_0] (rows=4 width=31)
                default@table_change_lower_to_higher_numeric_group_bigint,table_change_lower_to_higher_numeric_group_bigint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]

PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
#### A masked pattern was here ####
insert_num	c1	c2	c3	b
1	7203778961.000000000000000000	7.2037791E9	7.203778961E9	original
10	17.000000000000000000	90000.0	7.54072151E8	new
2	-2.000000000000000000	-2.0	-2.0	original
3	-5000.000000000000000000	-5000.0	-5000.0	original
4	52927714.000000000000000000	5.2927712E7	5.2927714E7	original
5	774.000000000000000000	2031.0	200.0	new
6	561431.000000000000000000	5.2927712E7	7.203778961E9	new
7	256.000000000000000000	32768.0	31889.0	new
8	5555.000000000000000000	40000.0	-7.19017797E8	new
9	100.000000000000000000	5000.0	5443.0	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_bigint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_bigint
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_decimal
    values (1, -29.0764, -29.0764, 'original'),
           (2, 753.7028, 753.7028, 'original'),
           (3, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__49
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_decimal
    values (1, -29.0764, -29.0764, 'original'),
           (2, 753.7028, 753.7028, 'original'),
           (3, -5000, -5000, 'original'),
           (4, 52927714, 52927714, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__49
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.b SIMPLE [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.c1 EXPRESSION [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.c2 EXPRESSION [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.insert_num EXPRESSION [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3
PREHOOK: query: select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
#### A masked pattern was here ####
insert_num	c1	c2	b
1	-29.076400000000000000	-29.076400000000000000	original
2	753.702800000000000000	753.702800000000000000	original
3	-5000.000000000000000000	-5000.000000000000000000	original
4	52927714.000000000000000000	52927714.000000000000000000	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_decimal
    values (5, '7.74', '22.3', 'new'),
           (6, '56.1431', '90.9', 'new'),
           (7, '2.56', '25.6', 'new'),
           (8, '555.5', '55.55', 'new'),
           (9, '10.0', '0.100', 'new'),
           (10, '1.7', '17.8888', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__50
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_decimal
    values (5, '7.74', '22.3', 'new'),
           (6, '56.1431', '90.9', 'new'),
           (7, '2.56', '25.6', 'new'),
           (8, '555.5', '55.55', 'new'),
           (9, '10.0', '0.100', 'new'),
           (10, '1.7', '17.8888', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__50
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.b SIMPLE [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.c1 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.c2 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_decimal.insert_num EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3
PREHOOK: query: explain
select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=59)
          Output:["_col0","_col1","_col2","_col3"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=59)
              Output:["_col0","_col1","_col2","_col3"]
              TableScan [TS_0] (rows=4 width=59)
                default@table_change_lower_to_higher_numeric_group_decimal,table_change_lower_to_higher_numeric_group_decimal,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","b"]

PREHOOK: query: select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
#### A masked pattern was here ####
insert_num	c1	c2	b
1	-29.0764	-29.0764	original
10	1.7	17.8888	new
2	753.7028	753.7028	original
3	-5000.0	-5000.0	original
4	5.2927712E7	5.2927714E7	original
5	7.74	22.3	new
6	56.1431	90.9	new
7	2.56	25.6	new
8	555.5	55.55	new
9	10.0	0.1	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_decimal
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_decimal
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
--
CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_float
    values (1, -29.0764, 'original'),
           (2, 753.7028, 'original'),
           (3, -5000, 'original'),
           (4, 52927714, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__51
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_float
    values (1, -29.0764, 'original'),
           (2, 753.7028, 'original'),
           (3, -5000, 'original'),
           (4, 52927714, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__51
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.b SIMPLE [(values__tmp__table__51)values__tmp__table__51.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.c1 EXPRESSION [(values__tmp__table__51)values__tmp__table__51.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.insert_num EXPRESSION [(values__tmp__table__51)values__tmp__table__51.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
#### A masked pattern was here ####
insert_num	c1	b
1	-29.0764	original
2	753.7028	original
3	-5000.0	original
4	5.2927712E7	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
PREHOOK: query: insert into table table_change_lower_to_higher_numeric_group_float
    values (5, '774', 'new'),
           (6, '561431', 'new'),
           (7, '256', 'new'),
           (8, '5555', 'new'),
           (9, '100', 'new'),
           (10, '17', 'new')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__52
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: query: insert into table table_change_lower_to_higher_numeric_group_float
    values (5, '774', 'new'),
           (6, '561431', 'new'),
           (7, '256', 'new'),
           (8, '5555', 'new'),
           (9, '100', 'new'),
           (10, '17', 'new')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__52
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.b SIMPLE [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.c1 EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: table_change_lower_to_higher_numeric_group_float.insert_num EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: explain
select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num
PREHOOK: type: QUERY
POSTHOOK: query: explain
select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float 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 vectorized, llap
      File Output Operator [FS_8]
        Select Operator [SEL_7] (rows=4 width=19)
          Output:["_col0","_col1","_col2"]
        <-Map 1 [SIMPLE_EDGE] vectorized, llap
          SHUFFLE [RS_6]
            Select Operator [SEL_5] (rows=4 width=19)
              Output:["_col0","_col1","_col2"]
              TableScan [TS_0] (rows=4 width=19)
                default@table_change_lower_to_higher_numeric_group_float,table_change_lower_to_higher_numeric_group_float,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","b"]

PREHOOK: query: select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
#### A masked pattern was here ####
insert_num	c1	b
1	-29.0764	original
10	17.0	new
2	753.7028	original
3	-5000.0	original
4	5.2927712E7	original
5	774.0	new
6	561431.0	new
7	256.0	new
8	5555.0	new
9	100.0	new
PREHOOK: query: drop table table_change_lower_to_higher_numeric_group_float
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
PREHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: query: drop table table_change_lower_to_higher_numeric_group_float
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@table_change_lower_to_higher_numeric_group_float
POSTHOOK: Output: default@table_change_lower_to_higher_numeric_group_float
