PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Partitioned
-- *IMPORTANT NOTE* We set hive.exec.schema.evolution=false above since schema evolution is always used for ACID.
-- Also, we don't do EXPLAINs on ACID files because the transaction id causes Q file statistics differences...
--
------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE ADD COLUMNS
--
--
-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--
CREATE TABLE part_add_int_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Partitioned
-- *IMPORTANT NOTE* We set hive.exec.schema.evolution=false above since schema evolution is always used for ACID.
-- Also, we don't do EXPLAINs on ACID files because the transaction id causes Q file statistics differences...
--
------------------------------------------------------------------------------------------
-- SECTION: ALTER TABLE ADD COLUMNS
--
--
-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--
CREATE TABLE part_add_int_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_add_int_permute_select
PREHOOK: query: insert into table part_add_int_permute_select partition(part=1)
    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@part_add_int_permute_select@part=1
POSTHOOK: query: insert into table part_add_int_permute_select partition(part=1)
    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@part_add_int_permute_select@part=1
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).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 part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@part_add_int_permute_select
PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@part_add_int_permute_select
POSTHOOK: Output: default@part_add_int_permute_select
PREHOOK: query: insert into table part_add_int_permute_select partition(part=2)
    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@part_add_int_permute_select@part=2
POSTHOOK: query: insert into table part_add_int_permute_select partition(part=2)
    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@part_add_int_permute_select@part=2
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=2).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 part_add_int_permute_select partition(part=1)
    values (9, 5, 'new', 100),
           (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
PREHOOK: Output: default@part_add_int_permute_select@part=1
POSTHOOK: query: insert into table part_add_int_permute_select partition(part=1)
    values (9, 5, 'new', 100),
           (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
POSTHOOK: Output: default@part_add_int_permute_select@part=1
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_permute_select PARTITION(part=1).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: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_permute_select
PREHOOK: Input: default@part_add_int_permute_select@part=1
PREHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,part,a,b from part_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_permute_select
POSTHOOK: Input: default@part_add_int_permute_select@part=1
POSTHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	b
1	1	1	original
10	1	6	new
2	1	2	original
3	1	3	original
4	1	4	original
5	2	1	new
6	2	2	new
7	2	3	new
8	2	4	new
9	1	5	new
PREHOOK: query: select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_permute_select
PREHOOK: Input: default@part_add_int_permute_select@part=1
PREHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_permute_select
POSTHOOK: Input: default@part_add_int_permute_select@part=1
POSTHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c
1	1	1	original	NULL
10	1	6	new	200
2	1	2	original	NULL
3	1	3	original	NULL
4	1	4	original	NULL
5	2	1	new	10
6	2	2	new	20
7	2	3	new	30
8	2	4	new	40
9	1	5	new	100
PREHOOK: query: select insert_num,part,c from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_permute_select
PREHOOK: Input: default@part_add_int_permute_select@part=1
PREHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c from part_add_int_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_permute_select
POSTHOOK: Input: default@part_add_int_permute_select@part=1
POSTHOOK: Input: default@part_add_int_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	c
1	1	NULL
10	1	200
2	1	NULL
3	1	NULL
4	1	NULL
5	2	10
6	2	20
7	2	30
8	2	40
9	1	100
PREHOOK: query: drop table part_add_int_permute_select
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_add_int_permute_select
PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: drop table part_add_int_permute_select
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_add_int_permute_select
POSTHOOK: Output: default@part_add_int_permute_select
PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--
CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_add_int_string_permute_select
POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--
CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_add_int_string_permute_select
PREHOOK: query: insert into table part_add_int_string_permute_select partition(part=1)
    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@part_add_int_string_permute_select@part=1
POSTHOOK: query: insert into table part_add_int_string_permute_select partition(part=1)
    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@part_add_int_string_permute_select@part=1
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).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 part_add_int_string_permute_select add columns(c int, d string)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Output: default@part_add_int_string_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table part_add_int_string_permute_select add columns(c int, d string)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Output: default@part_add_int_string_permute_select
PREHOOK: query: insert into table part_add_int_string_permute_select partition(part=2)
    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@part_add_int_string_permute_select@part=2
POSTHOOK: query: insert into table part_add_int_string_permute_select partition(part=2)
    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@part_add_int_string_permute_select@part=2
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=2).c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=2).d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=2).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 part_add_int_string_permute_select partition(part=1)
    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@part_add_int_string_permute_select@part=1
POSTHOOK: query: insert into table part_add_int_string_permute_select partition(part=1)
    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@part_add_int_string_permute_select@part=1
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_add_int_string_permute_select PARTITION(part=1).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: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	b
1	1	1	original
10	1	6	new
2	1	2	original
3	1	3	original
4	1	4	original
5	2	1	new
6	2	2	new
7	2	3	new
8	2	4	new
9	1	5	new
PREHOOK: query: select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c
1	1	1	original	NULL
10	1	6	new	200
2	1	2	original	NULL
3	1	3	original	NULL
4	1	4	original	NULL
5	2	1	new	10
6	2	2	new	20
7	2	3	new	30
8	2	4	new	40
9	1	5	new	100
PREHOOK: query: select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
1	1	1	original	NULL	NULL
10	1	6	new	200	two hundred
2	1	2	original	NULL	NULL
3	1	3	original	NULL	NULL
4	1	4	original	NULL	NULL
5	2	1	new	10	ten
6	2	2	new	20	twenty
7	2	3	new	30	thirty
8	2	4	new	40	forty
9	1	5	new	100	hundred
PREHOOK: query: select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	c	d
1	1	1	NULL	NULL
10	1	6	200	two hundred
2	1	2	NULL	NULL
3	1	3	NULL	NULL
4	1	4	NULL	NULL
5	2	1	10	ten
6	2	2	20	twenty
7	2	3	30	thirty
8	2	4	40	forty
9	1	5	100	hundred
PREHOOK: query: select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	a	d
1	1	1	NULL
10	1	6	two hundred
2	1	2	NULL
3	1	3	NULL
4	1	4	NULL
5	2	1	ten
6	2	2	twenty
7	2	3	thirty
8	2	4	forty
9	1	5	hundred
PREHOOK: query: select insert_num,part,c from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	c
1	1	NULL
10	1	200
2	1	NULL
3	1	NULL
4	1	NULL
5	2	10
6	2	20
7	2	30
8	2	40
9	1	100
PREHOOK: query: select insert_num,part,d from part_add_int_string_permute_select order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Input: default@part_add_int_string_permute_select@part=1
PREHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,d from part_add_int_string_permute_select order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Input: default@part_add_int_string_permute_select@part=1
POSTHOOK: Input: default@part_add_int_string_permute_select@part=2
#### A masked pattern was here ####
insert_num	part	d
1	1	NULL
10	1	two hundred
2	1	NULL
3	1	NULL
4	1	NULL
5	2	ten
6	2	twenty
7	2	thirty
8	2	forty
9	1	hundred
PREHOOK: query: drop table part_add_int_string_permute_select
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_add_int_string_permute_select
PREHOOK: Output: default@part_add_int_string_permute_select
POSTHOOK: query: drop table part_add_int_string_permute_select
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_add_int_string_permute_select
POSTHOOK: Output: default@part_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 part_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_string_group_double
PREHOOK: query: insert into table part_change_string_group_double partition(part=1)
    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@part_change_string_group_double@part=1
POSTHOOK: query: insert into table part_change_string_group_double partition(part=1)
    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@part_change_string_group_double@part=1
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).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 part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@part_change_string_group_double
PREHOOK: Output: default@part_change_string_group_double
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@part_change_string_group_double
POSTHOOK: Output: default@part_change_string_group_double
PREHOOK: query: insert into table part_change_string_group_double partition(part=2)
    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@part_change_string_group_double@part=2
POSTHOOK: query: insert into table part_change_string_group_double partition(part=2)
    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@part_change_string_group_double@part=2
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=2).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 part_change_string_group_double partition(part=1)
    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@part_change_string_group_double@part=1
POSTHOOK: query: insert into table part_change_string_group_double partition(part=1)
    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@part_change_string_group_double@part=1
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_double PARTITION(part=1).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: select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_double
PREHOOK: Input: default@part_change_string_group_double@part=1
PREHOOK: Input: default@part_change_string_group_double@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_double
POSTHOOK: Input: default@part_change_string_group_double@part=1
POSTHOOK: Input: default@part_change_string_group_double@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	753.7028	753.7028	753.7028	original
10	1	9250340.75	9250340.75	9250340.75	new
2	1	-3651.672121	-3651.672121	-3651.672121	original
3	1	-29.0764	-29.0764	-29.0764	original
4	1	-10.3	-10.3	-10.3	original
5	2	30.774	30.774	30.774	new
6	2	20.31	20.31	20.31	new
7	2	46114.284799488	46114.284799488	46114.284799488	new
8	2	-66475.561431	-66475.561431	-66475.561431	new
9	1	17808.963785	17808.963785	17808.963785	new
PREHOOK: query: drop table part_change_string_group_double
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_string_group_double
PREHOOK: Output: default@part_change_string_group_double
POSTHOOK: query: drop table part_change_string_group_double
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_string_group_double
POSTHOOK: Output: default@part_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 part_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_date_group_string_group_timestamp
PREHOOK: query: insert into table part_change_date_group_string_group_timestamp partition(part=1)
    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@part_change_date_group_string_group_timestamp@part=1
POSTHOOK: query: insert into table part_change_date_group_string_group_timestamp partition(part=1)
    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@part_change_date_group_string_group_timestamp@part=1
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).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 part_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@part_change_date_group_string_group_timestamp
PREHOOK: Output: default@part_change_date_group_string_group_timestamp
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_date_group_string_group_timestamp
POSTHOOK: Output: default@part_change_date_group_string_group_timestamp
PREHOOK: query: insert into table part_change_date_group_string_group_timestamp partition(part=2)
    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@part_change_date_group_string_group_timestamp@part=2
POSTHOOK: query: insert into table part_change_date_group_string_group_timestamp partition(part=2)
    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@part_change_date_group_string_group_timestamp@part=2
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=2).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 part_change_date_group_string_group_timestamp partition(part=1)
    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@part_change_date_group_string_group_timestamp@part=1
POSTHOOK: query: insert into table part_change_date_group_string_group_timestamp partition(part=1)
    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@part_change_date_group_string_group_timestamp@part=1
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_timestamp PARTITION(part=1).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: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_date_group_string_group_timestamp
PREHOOK: Input: default@part_change_date_group_string_group_timestamp@part=1
PREHOOK: Input: default@part_change_date_group_string_group_timestamp@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_date_group_string_group_timestamp
POSTHOOK: Input: default@part_change_date_group_string_group_timestamp@part=1
POSTHOOK: Input: default@part_change_date_group_string_group_timestamp@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	b
1	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	1	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	1	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	2	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	2	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	2	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	2	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	1	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	1	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 part_change_date_group_string_group_timestamp
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_date_group_string_group_timestamp
PREHOOK: Output: default@part_change_date_group_string_group_timestamp
POSTHOOK: query: drop table part_change_date_group_string_group_timestamp
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_date_group_string_group_timestamp
POSTHOOK: Output: default@part_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 part_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_date_group_string_group_date
PREHOOK: query: insert into table part_change_date_group_string_group_date partition(part=1)
    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@part_change_date_group_string_group_date@part=1
POSTHOOK: query: insert into table part_change_date_group_string_group_date partition(part=1)
    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@part_change_date_group_string_group_date@part=1
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=1).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 part_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@part_change_date_group_string_group_date
PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_date_group_string_group_date
POSTHOOK: Output: default@part_change_date_group_string_group_date
PREHOOK: query: insert into table part_change_date_group_string_group_date partition(part=2)
    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@part_change_date_group_string_group_date@part=2
POSTHOOK: query: insert into table part_change_date_group_string_group_date partition(part=2)
    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@part_change_date_group_string_group_date@part=2
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_date_group_string_group_date PARTITION(part=2).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: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_date_group_string_group_date
PREHOOK: Input: default@part_change_date_group_string_group_date@part=1
PREHOOK: Input: default@part_change_date_group_string_group_date@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_date_group_string_group_date
POSTHOOK: Input: default@part_change_date_group_string_group_date@part=1
POSTHOOK: Input: default@part_change_date_group_string_group_date@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	b
1	1	2000-12-18	2000-12-18                                        	2000-12-18     	2000-12-18	2000-12-18	original
2	1	2024-11-11	2024-11-11                                        	2024-11-11     	2024-11-11	2024-11-11	original
3	1	2021-09-24	2021-09-24                                        	2021-09-24     	2021-09-24	2021-09-24	original
4	2	0004-09-22	0004-09-22                                        	0004-09-22     	0004-09-22	0004-09-22	new
5	2	1815-05-06	1815-05-06                                        	1815-05-06     	1815-05-06	1815-05-06	new
6	2	2007-02-09	2007-02-09                                        	2007-02-09     	2007-02-09	2007-02-09	new
7	2	2002-05-10	2002-05-10                                        	2002-05-10     	2002-05-10	2002-05-10	new
8	2	6229-06-28	6229-06-28                                        	6229-06-28     	6229-06-28	6229-06-28	new
9	2	5966-07-09	5966-07-09                                        	5966-07-09     	5966-07-09	5966-07-09	new
PREHOOK: query: drop table part_change_date_group_string_group_date
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_date_group_string_group_date
PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: drop table part_change_date_group_string_group_date
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_date_group_string_group_date
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_string partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_string@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_string partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_string@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_string partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__16
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_string partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__16
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_string PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
10	1	17	90000	754072151	3289094	new
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
5	2	2000	72909	3244222	-93222	new
6	2	1	200	2323322	5430907	new
7	2	256	32768	31889	470614135	new
8	2	5555	40000	-719017797	810662019	new
9	1	100	5000	5443	0	new
PREHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_string
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_char@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_char@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__18
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__18
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45                                                	1000                                              	483777                                            	-23866739993                                      	original
10	1	17                                                	90000                                             	754072151                                         	3289094                                           	new
2	1	-2                                                	-6737                                             	56                                                	28899333                                          	original
3	1	NULL	4957                                              	832222222                                         	9000000000                                        	original
4	1	0                                                 	20435                                             	847492223                                         	-999999999999                                     	original
5	2	2000                                              	72909                                             	3244222                                           	-93222                                            	new
6	2	1                                                 	200                                               	2323322                                           	5430907                                           	new
7	2	256                                               	32768                                             	31889                                             	470614135                                         	new
8	2	5555                                              	40000                                             	-719017797                                        	810662019                                         	new
9	1	100                                               	5000                                              	5443                                              	0                                                 	new
PREHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char_trunc partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char_trunc partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char_trunc partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__20
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_char_trunc partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__20
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_char_trunc PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45   	1000 	48377	-2386	original
10	1	17   	90000	75407	32890	new
2	1	-2   	-6737	56   	28899	original
3	1	NULL	4957 	83222	90000	original
4	1	0    	20435	84749	-9999	original
5	2	2000 	72909	32442	-9322	new
6	2	1    	200  	23233	54309	new
7	2	256  	32768	31889	47061	new
8	2	5555 	40000	-7190	81066	new
9	1	100  	5000 	5443 	0    	new
PREHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_char_trunc
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_varchar@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_varchar@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__22
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__22
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
10	1	17	90000	754072151	3289094	new
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
5	2	2000	72909	3244222	-93222	new
6	2	1	200	2323322	5430907	new
7	2	256	32768	31889	470614135	new
8	2	5555	40000	-719017797	810662019	new
9	1	100	5000	5443	0	new
PREHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar_trunc partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar_trunc partition(part=1)
    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@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__23)values__tmp__table__23.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	483777	-23866739993	original
2	1	-2	-6737	56	28899333	original
3	1	NULL	4957	832222222	9000000000	original
4	1	0	20435	847492223	-999999999999	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar_trunc partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__24
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: insert into table part_change_numeric_group_string_group_multi_ints_varchar_trunc partition(part)
    values (5, '2000', '72909', '3244222', '-93222', 'new', 2),
           (6, '1', '200', '2323322', '5430907', 'new', 2),
           (7, '256', '32768', '31889', '470614135', 'new', 2),
           (8, '5555', '40000', '-719017797', '810662019', 'new', 2),
           (9, '100', '5000', '5443', '0', 'new', 1),
           (10, '17', '90000', '754072151', '3289094', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__24
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).b SIMPLE [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__24)values__tmp__table__24.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_multi_ints_varchar_trunc PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	45	1000	48377	-2386	original
10	1	17	90000	75407	32890	new
2	1	-2	-6737	56	28899	original
3	1	NULL	4957	83222	90000	original
4	1	0	20435	84749	-9999	original
5	2	2000	72909	32442	-9322	new
6	2	1	200	23233	54309	new
7	2	256	32768	31889	47061	new
8	2	5555	40000	-7190	81066	new
9	1	100	5000	5443	0	new
PREHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: query: drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
POSTHOOK: Output: default@part_change_numeric_group_string_group_multi_ints_varchar_trunc
PREHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), STRING
--
CREATE TABLE part_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: query: --
-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), STRING
--
CREATE TABLE part_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_string
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_string partition(part=1)
    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@part_change_numeric_group_string_group_floating_string@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_string partition(part=1)
    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@part_change_numeric_group_string_group_floating_string@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).b SIMPLE [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__25)values__tmp__table__25.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).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,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	1	-10.300000000000000000	-2.0	-29.0764	original
3	1	-832222222.000000000000000000	255.0	4957.0	original
4	1	847492223.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_string
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_string
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_string
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_string partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__26
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_string partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__26
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_string@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_string@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).b SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c1 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c2 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).c3 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=2).b SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=2).c1 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=2).c2 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=2).c3 SIMPLE [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_string PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__26)values__tmp__table__26.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993	753.7028	-3651.672121	original
10	1	17	90000	754072151	new
2	1	-10.3	-2.0	-29.0764	original
3	1	-832222222	255.0	4957.0	original
4	1	847492223	0.0	20435.0	original
5	2	30.774	20.31	46114.284799488	new
6	2	-66475.561431	52927714	7203778961	new
7	2	256	32768	31889	new
8	2	5555	40000	-719017797	new
9	1	100	5000	5443	new
PREHOOK: query: drop table part_change_numeric_group_string_group_floating_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_string
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: query: drop table part_change_numeric_group_string_group_floating_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_string
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_char partition(part=1)
    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@part_change_numeric_group_string_group_floating_char@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_char partition(part=1)
    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@part_change_numeric_group_string_group_floating_char@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).b SIMPLE [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__27)values__tmp__table__27.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).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,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	1	-10.300000000000000000	-2.0	-29.0764	original
3	1	9000000000.000000000000000000	-255.0	4957.0	original
4	1	-999999999999.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_char
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_char
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_char partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__28
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_char partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__28
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).b SIMPLE [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=2).b SIMPLE [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__28)values__tmp__table__28.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993                                      	753.7028                                          	-3651.672121                                      	original
10	1	17                                                	90000                                             	754072151                                         	new
2	1	-10.3                                             	-2.0                                              	-29.0764                                          	original
3	1	9000000000                                        	-255.0                                            	4957.0                                            	original
4	1	-999999999999                                     	0.0                                               	20435.0                                           	original
5	2	30.774                                            	20.31                                             	46114.284799488                                   	new
6	2	-66475.561431                                     	52927714                                          	7203778961                                        	new
7	2	256                                               	32768                                             	31889                                             	new
8	2	5555                                              	40000                                             	-719017797                                        	new
9	1	100                                               	5000                                              	5443                                              	new
PREHOOK: query: drop table part_change_numeric_group_string_group_floating_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: query: drop table part_change_numeric_group_string_group_floating_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_char_trunc partition(part=1)
    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@part_change_numeric_group_string_group_floating_char_trunc@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_char_trunc partition(part=1)
    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@part_change_numeric_group_string_group_floating_char_trunc@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__29)values__tmp__table__29.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).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,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	1	-10.300000000000000000	-2.0	-29.0764	original
3	1	832222222.000000000000000000	-255.0	4957.0	original
4	1	847492223.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_char_trunc partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__30
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_char_trunc partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__30
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=2).b SIMPLE [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_char_trunc PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__30)values__tmp__table__30.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-238667	753.702	-3651.6	original
10	1	17     	90000  	7540721	new
2	1	-10.3  	-2.0   	-29.076	original
3	1	8322222	-255.0 	4957.0 	original
4	1	8474922	0.0    	20435.0	original
5	2	30.774 	20.31  	46114.2	new
6	2	-66475.	5292771	7203778	new
7	2	256    	32768  	31889  	new
8	2	5555   	40000  	-719017	new
9	1	100    	5000   	5443   	new
PREHOOK: query: drop table part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: query: drop table part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_char_trunc
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar partition(part=1)
    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@part_change_numeric_group_string_group_floating_varchar@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar partition(part=1)
    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@part_change_numeric_group_string_group_floating_varchar@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__31)values__tmp__table__31.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).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,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-2.38667407E10	753.7028	-3651.672121000000000000	original
2	1	-10.3	-2.0	-29.076400000000000000	original
3	1	8.9999995E9	-255.0	4957.000000000000000000	original
4	1	-1.0E12	0.0	20435.000000000000000000	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_varchar
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__32
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__32
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=2).b SIMPLE [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__32)values__tmp__table__32.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-2.38667407E10	753.7028	-3651.672121	original
10	1	17	90000	754072151	new
2	1	-10.3	-2.0	-29.0764	original
3	1	8.9999995E9	-255.0	4957	original
4	1	-1.0E12	0.0	20435	original
5	2	30.774	20.31	46114.284799488	new
6	2	-66475.561431	52927714	7203778961	new
7	2	256	32768	31889	new
8	2	5555	40000	-719017797	new
9	1	100	5000	5443	new
PREHOOK: query: drop table part_change_numeric_group_string_group_floating_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: query: drop table part_change_numeric_group_string_group_floating_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar
POSTHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar_trunc partition(part=1)
    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@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar_trunc partition(part=1)
    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@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__33)values__tmp__table__33.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).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,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-23866739993.000000000000000000	753.7028	-3651.672121	original
2	1	-10.300000000000000000	-2.0	-29.0764	original
3	1	9000000000.000000000000000000	-255.0	4957.0	original
4	1	-999999999999.000000000000000000	0.0	20435.0	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar_trunc partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__34
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: insert into table part_change_numeric_group_string_group_floating_varchar_trunc partition(part)
    values (5, '30.774', '20.31', '46114.284799488', 'new', 2),
           (6, '-66475.561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__34
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
POSTHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=2
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).b SIMPLE [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=2).b SIMPLE [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_numeric_group_string_group_floating_varchar_trunc PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__34)values__tmp__table__34.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=1
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	-238667	753.702	-3651.6	original
10	1	17	90000	7540721	new
2	1	-10.3	-2.0	-29.076	original
3	1	9000000	-255.0	4957.0	original
4	1	-999999	0.0	20435.0	original
5	2	30.774	20.31	46114.2	new
6	2	-66475.	5292771	7203778	new
7	2	256	32768	31889	new
8	2	5555	40000	-719017	new
9	1	100	5000	5443	new
PREHOOK: query: drop table part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
PREHOOK: Output: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: query: drop table part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_numeric_group_string_group_floating_varchar_trunc
POSTHOOK: Output: default@part_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 part_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_string_group_string_group_string
PREHOOK: query: insert into table part_change_string_group_string_group_string partition(part=1)
    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@part_change_string_group_string_group_string@part=1
POSTHOOK: query: insert into table part_change_string_group_string_group_string partition(part=1)
    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@part_change_string_group_string_group_string@part=1
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).b SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c1 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c2 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c3 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c4 SIMPLE [(values__tmp__table__35)values__tmp__table__35.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_string
PREHOOK: Input: default@part_change_string_group_string_group_string@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_string
POSTHOOK: Input: default@part_change_string_group_string_group_string@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	escapist	escapist	escapist	escapist	original
2	1	heartbeat	heartbeat	heartbeat	heartbeat	original
3	1	dynamic reptile	dynamic reptile	dynamic reptile	dynamic reptile	original
4	1	blank pads   	blank pads   	blank pads   	blank pads   	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_string
PREHOOK: Output: default@part_change_string_group_string_group_string
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_string
POSTHOOK: Output: default@part_change_string_group_string_group_string
PREHOOK: query: insert into table part_change_string_group_string_group_string partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__36
PREHOOK: Output: default@part_change_string_group_string_group_string
POSTHOOK: query: insert into table part_change_string_group_string_group_string partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__36
POSTHOOK: Output: default@part_change_string_group_string_group_string@part=1
POSTHOOK: Output: default@part_change_string_group_string_group_string@part=2
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).b SIMPLE [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).b SIMPLE [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__36)values__tmp__table__36.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_string PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_string
PREHOOK: Input: default@part_change_string_group_string_group_string@part=1
PREHOOK: Input: default@part_change_string_group_string_group_string@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_string
POSTHOOK: Input: default@part_change_string_group_string_group_string@part=1
POSTHOOK: Input: default@part_change_string_group_string_group_string@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	escapist                                          	escapist 	escapist	escapist 	original
10	1	bottom                                            	bottom   	bottom  	bottom   	new
2	1	heartbeat                                         	heartbeat	heartbeat	heartbeat	original
3	1	dynamic reptile                                   	dynamic r	dynamic reptile	dynamic r	original
4	1	blank pads                                        	blank pad	blank pads   	blank pad	original
5	2	junkyard                                          	junkyard 	junkyard	junkyard 	new
6	2	  baffling                                        	  bafflin	  baffling    	  bafflin	new
7	2	           featherweight                          	         	           featherweight  	         	new
8	2	  against                                         	  against	  against	  against	new
9	1	hangar paralysed companion                        	hangar pa	hangar paralysed companion 	hangar pa	new
PREHOOK: query: drop table part_change_string_group_string_group_string
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_string_group_string_group_string
PREHOOK: Output: default@part_change_string_group_string_group_string
POSTHOOK: query: drop table part_change_string_group_string_group_string
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_string_group_string_group_string
POSTHOOK: Output: default@part_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 part_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_string_group_string_group_char
PREHOOK: query: insert into table part_change_string_group_string_group_char partition(part=1)
    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@part_change_string_group_string_group_char@part=1
POSTHOOK: query: insert into table part_change_string_group_string_group_char partition(part=1)
    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@part_change_string_group_string_group_char@part=1
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).b SIMPLE [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__37)values__tmp__table__37.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).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,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_char
PREHOOK: Input: default@part_change_string_group_string_group_char@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_char
POSTHOOK: Input: default@part_change_string_group_string_group_char@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	escapist                                          	escapist                                          	escapist                                          	original
2	1	heartbeat                                         	heartbeat                                         	heartbeat                                         	original
3	1	dynamic reptile                                   	dynamic reptile                                   	dynamic reptile                                   	original
4	1	blank pads                                        	blank pads                                        	blank pads                                        	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_char
PREHOOK: Output: default@part_change_string_group_string_group_char
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_char
POSTHOOK: Output: default@part_change_string_group_string_group_char
PREHOOK: query: insert into table part_change_string_group_string_group_char partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__38
PREHOOK: Output: default@part_change_string_group_string_group_char
POSTHOOK: query: insert into table part_change_string_group_string_group_char partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__38
POSTHOOK: Output: default@part_change_string_group_string_group_char@part=1
POSTHOOK: Output: default@part_change_string_group_string_group_char@part=2
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).b SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).c3 SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=2).b SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=2).c3 SIMPLE [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_char PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__38)values__tmp__table__38.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_char
PREHOOK: Input: default@part_change_string_group_string_group_char@part=1
PREHOOK: Input: default@part_change_string_group_string_group_char@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_char
POSTHOOK: Input: default@part_change_string_group_string_group_char@part=1
POSTHOOK: Input: default@part_change_string_group_string_group_char@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	escapist	escapist	escapist	original
10	1	bottom  	bottom  	bottom  	new
2	1	heartbeat	heartbeat	heartbeat	original
3	1	dynamic reptile	dynamic r	dynamic reptile	original
4	1	blank pads	blank pad	blank pads	original
5	2	junkyard	junkyard	junkyard	new
6	2	  baffling    	  bafflin	  baffling    	new
7	2	           featherweight  	         	           featherweight  	new
8	2	  against	  against	  against	new
9	1	hangar paralysed companion 	hangar pa	hangar paralysed companion 	new
PREHOOK: query: drop table part_change_string_group_string_group_char
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_string_group_string_group_char
PREHOOK: Output: default@part_change_string_group_string_group_char
POSTHOOK: query: drop table part_change_string_group_string_group_char
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_string_group_string_group_char
POSTHOOK: Output: default@part_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 part_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_string_group_string_group_varchar
PREHOOK: query: insert into table part_change_string_group_string_group_varchar partition(part=1)
    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@part_change_string_group_string_group_varchar@part=1
POSTHOOK: query: insert into table part_change_string_group_string_group_varchar partition(part=1)
    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@part_change_string_group_string_group_varchar@part=1
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__39)values__tmp__table__39.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).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,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_varchar
PREHOOK: Input: default@part_change_string_group_string_group_varchar@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_varchar
POSTHOOK: Input: default@part_change_string_group_string_group_varchar@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	escapist	escapist	escapist	original
2	1	heartbeat	heartbeat	heartbeat	original
3	1	dynamic reptile	dynamic reptile	dynamic reptile	original
4	1	blank pads   	blank pads   	blank pads   	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_varchar
PREHOOK: Output: default@part_change_string_group_string_group_varchar
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_string_group_string_group_varchar
POSTHOOK: Output: default@part_change_string_group_string_group_varchar
PREHOOK: query: insert into table part_change_string_group_string_group_varchar partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__40
PREHOOK: Output: default@part_change_string_group_string_group_varchar
POSTHOOK: query: insert into table part_change_string_group_string_group_varchar partition(part)
    values (5, 'junkyard', 'junkyard', 'junkyard', 'new', 2),
           (6, '  baffling    ', '  baffling    ', '  baffling    ', 'new', 2),
           (7, '           featherweight  ', '           featherweight  ','           featherweight  ', 'new', 2),
           (8, '  against', '  against', '  against', 'new', 2),
           (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new', 1),
           (10, 'bottom  ', 'bottom  ', 'bottom  ', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__40
POSTHOOK: Output: default@part_change_string_group_string_group_varchar@part=1
POSTHOOK: Output: default@part_change_string_group_string_group_varchar@part=2
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).b SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).c3 SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=2).b SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=2).c3 SIMPLE [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_string_group_string_group_varchar PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__40)values__tmp__table__40.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_string_group_string_group_varchar
PREHOOK: Input: default@part_change_string_group_string_group_varchar@part=1
PREHOOK: Input: default@part_change_string_group_string_group_varchar@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_string_group_string_group_varchar
POSTHOOK: Input: default@part_change_string_group_string_group_varchar@part=1
POSTHOOK: Input: default@part_change_string_group_string_group_varchar@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	escapist                                          	escapist 	escapist	original
10	1	bottom                                            	bottom   	bottom  	new
2	1	heartbeat                                         	heartbeat	heartbeat	original
3	1	dynamic reptile                                   	dynamic r	dynamic reptile	original
4	1	blank pads                                        	blank pad	blank pads   	original
5	2	junkyard                                          	junkyard 	junkyard	new
6	2	  baffling                                        	  bafflin	  baffling    	new
7	2	           featherweight                          	         	           featherweight  	new
8	2	  against                                         	  against	  against	new
9	1	hangar paralysed companion                        	hangar pa	hangar paralysed companion 	new
PREHOOK: query: drop table part_change_string_group_string_group_varchar
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_string_group_string_group_varchar
PREHOOK: Output: default@part_change_string_group_string_group_varchar
POSTHOOK: query: drop table part_change_string_group_string_group_varchar
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_string_group_string_group_varchar
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_tinyint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_tinyint@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_tinyint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_tinyint@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__41)values__tmp__table__41.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).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,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	c6	b
1	1	45	45	45	45	45	45	original
2	1	-2	-2	-2	-2	-2	-2	original
3	1	NULL	NULL	NULL	NULL	NULL	NULL	original
4	1	100	100	100	100	100	100	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_tinyint partition(part)
    values (5, '774', '2031', '200', '12', '99', '0', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', '7', '6', 'new', 2),
           (7, '256', '32768', '31889', '300', '444', '506', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', '55', '65', 'new', 2),
           (9, '100', '5000', '5443', '22', '2', '-2', 'new', 1),
           (10, '17', '90000', '754072151', '95', '20', '18', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__42
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_tinyint partition(part)
    values (5, '774', '2031', '200', '12', '99', '0', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', '7', '6', 'new', 2),
           (7, '256', '32768', '31889', '300', '444', '506', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', '55', '65', 'new', 2),
           (9, '100', '5000', '5443', '22', '2', '-2', 'new', 1),
           (10, '17', '90000', '754072151', '95', '20', '18', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__42
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).b SIMPLE [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__42)values__tmp__table__42.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_tinyint PARTITION(part=2).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	_col8
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	c6	b
1	1	45	45	45	45.000000000000000000	45.0	45.0	original
10	1	17	90000	754072151	95.000000000000000000	20.0	18.0	new
2	1	-2	-2	-2	-2.000000000000000000	-2.0	-2.0	original
3	1	NULL	NULL	NULL	NULL	NULL	NULL	original
4	1	100	100	100	100.000000000000000000	100.0	100.0	original
5	2	774	2031	200	12.000000000000000000	99.0	0.0	new
6	2	NULL	52927714	7203778961	8.000000000000000000	7.0	6.0	new
7	2	256	32768	31889	300.000000000000000000	444.0	506.0	new
8	2	5555	40000	-719017797	45.000000000000000000	55.0	65.0	new
9	1	100	5000	5443	22.000000000000000000	2.0	-2.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_tinyint
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_smallint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_smallint@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_smallint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_smallint@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__43)values__tmp__table__43.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).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,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	b
1	1	2031	2031	2031	2031	2031	original
2	1	-2	-2	-2	-2	-2	original
3	1	-5000	-5000	-5000	-5000	-5000	original
4	1	100	100	100	100	100	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_smallint partition(part)
    values (5, '774', '2031', '200', '12', '99', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', '7', 'new', 2),
           (7, '256', '32768', '31889', '300', '444', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', '55', 'new', 2),
           (9, '100', '5000', '5443', '22', '2', 'new', 1),
           (10, '17', '90000', '754072151', '95', '20', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__44
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_smallint partition(part)
    values (5, '774', '2031', '200', '12', '99', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', '7', 'new', 2),
           (7, '256', '32768', '31889', '300', '444', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', '55', 'new', 2),
           (9, '100', '5000', '5443', '22', '2', 'new', 1),
           (10, '17', '90000', '754072151', '95', '20', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__44
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).b SIMPLE [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__44)values__tmp__table__44.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_smallint PARTITION(part=2).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	_col7
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	c5	b
1	1	2031	2031	2031.000000000000000000	2031.0	2031.0	original
10	1	17	90000	754072151.000000000000000000	95.0	20.0	new
2	1	-2	-2	-2.000000000000000000	-2.0	-2.0	original
3	1	-5000	-5000	-5000.000000000000000000	-5000.0	-5000.0	original
4	1	100	100	100.000000000000000000	100.0	100.0	original
5	2	774	2031	200.000000000000000000	12.0	99.0	new
6	2	561431	52927714	7203778961.000000000000000000	8.0	7.0	new
7	2	256	32768	31889.000000000000000000	300.0	444.0	new
8	2	5555	40000	-719017797.000000000000000000	45.0	55.0	new
9	1	100	5000	5443.000000000000000000	22.0	2.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_smallint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_smallint
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_int
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_int partition(part=1)
    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@part_change_lower_to_higher_numeric_group_int@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_int partition(part=1)
    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@part_change_lower_to_higher_numeric_group_int@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).b SIMPLE [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__45)values__tmp__table__45.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).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,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	2031	2031	2031	2031	original
2	1	-2	-2	-2	-2	original
3	1	-5000	-5000	-5000	-5000	original
4	1	52927714	52927714	52927714	52927714	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_int
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_int
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_int
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_int partition(part)
    values (5, '774', '2031', '200', '12', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', 'new', 2),
           (7, '256', '32768', '31889', '300', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', 'new', 2),
           (9, '100', '5000', '5443', '22', 'new', 1),
           (10, '17', '90000', '754072151', '95', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__46
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_int partition(part)
    values (5, '774', '2031', '200', '12', 'new', 2),
           (6, '561431', '52927714', '7203778961',  '8', 'new', 2),
           (7, '256', '32768', '31889', '300', 'new', 2),
           (8, '5555', '40000', '-719017797', '45', 'new', 2),
           (9, '100', '5000', '5443', '22', 'new', 1),
           (10, '17', '90000', '754072151', '95', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__46
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_int@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_int@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).b SIMPLE [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).b SIMPLE [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__46)values__tmp__table__46.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_int PARTITION(part=2).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	_col6
PREHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	c4	b
1	1	2031	2031.000000000000000000	2031.0	2031.0	original
10	1	17	90000.000000000000000000	7.5407213E8	95.0	new
2	1	-2	-2.000000000000000000	-2.0	-2.0	original
3	1	-5000	-5000.000000000000000000	-5000.0	-5000.0	original
4	1	52927714	52927714.000000000000000000	5.2927712E7	5.2927714E7	original
5	2	774	2031.000000000000000000	200.0	12.0	new
6	2	561431	52927714.000000000000000000	7.2037791E9	8.0	new
7	2	256	32768.000000000000000000	31889.0	300.0	new
8	2	5555	40000.000000000000000000	-7.1901779E8	45.0	new
9	1	100	5000.000000000000000000	5443.0	22.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_int
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_int
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_int
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_bigint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_bigint@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_bigint partition(part=1)
    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@part_change_lower_to_higher_numeric_group_bigint@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__47)values__tmp__table__47.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).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,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=1
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	7203778961	7203778961	7203778961	original
2	1	-2	-2	-2	original
3	1	-5000	-5000	-5000	original
4	1	52927714	52927714	52927714	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_bigint partition(part)
    values (5, '774', '2031', '200', 'new', 2),
           (6, '561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__48
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_bigint partition(part)
    values (5, '774', '2031', '200', 'new', 2),
           (6, '561431', '52927714', '7203778961', 'new', 2),
           (7, '256', '32768', '31889', 'new', 2),
           (8, '5555', '40000', '-719017797', 'new', 2),
           (9, '100', '5000', '5443', 'new', 1),
           (10, '17', '90000', '754072151', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__48
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=2).b SIMPLE [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_bigint PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__48)values__tmp__table__48.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4	_col5
PREHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint@part=2
#### A masked pattern was here ####
insert_num	part	c1	c2	c3	b
1	1	7203778961.000000000000000000	7.2037791E9	7.203778961E9	original
10	1	17.000000000000000000	90000.0	7.54072151E8	new
2	1	-2.000000000000000000	-2.0	-2.0	original
3	1	-5000.000000000000000000	-5000.0	-5000.0	original
4	1	52927714.000000000000000000	5.2927712E7	5.2927714E7	original
5	2	774.000000000000000000	2031.0	200.0	new
6	2	561431.000000000000000000	5.2927712E7	7.203778961E9	new
7	2	256.000000000000000000	32768.0	31889.0	new
8	2	5555.000000000000000000	40000.0	-7.19017797E8	new
9	1	100.000000000000000000	5000.0	5443.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_bigint
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_bigint
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_decimal partition(part=1)
    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@part_change_lower_to_higher_numeric_group_decimal@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_decimal partition(part=1)
    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@part_change_lower_to_higher_numeric_group_decimal@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).b SIMPLE [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__49)values__tmp__table__49.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).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,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=1
#### A masked pattern was here ####
insert_num	part	c1	b
1	1	-29.076400000000000000	original
2	1	753.702800000000000000	original
3	1	-5000.000000000000000000	original
4	1	52927714.000000000000000000	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_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@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_decimal partition(part)
    values (5, '7.74', '22.3', 'new', 2),
           (6, '56.1431', '90.9', 'new', 2),
           (7, '2.56', '25.6', 'new', 2),
           (8, '555.5', '55.55', 'new', 2),
           (9, '10.0', '0.100', 'new', 1),
           (10, '1.7', '17.8888', 'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__50
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_decimal partition(part)
    values (5, '7.74', '22.3', 'new', 2),
           (6, '56.1431', '90.9', 'new', 2),
           (7, '2.56', '25.6', 'new', 2),
           (8, '555.5', '55.55', 'new', 2),
           (9, '10.0', '0.100', 'new', 1),
           (10, '1.7', '17.8888', 'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__50
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).b SIMPLE [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=2).b SIMPLE [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_decimal PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__50)values__tmp__table__50.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal@part=2
#### A masked pattern was here ####
insert_num	part	c1	b
1	1	-29.0764	original
10	1	1.7	new
2	1	753.7028	original
3	1	-5000.0	original
4	1	5.2927712E7	original
5	2	7.74	new
6	2	56.1431	new
7	2	2.56	new
8	2	555.5	new
9	1	10.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_decimal
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_decimal
POSTHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@part_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 part_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING) PARTITIONED BY(part INT) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_float partition(part=1)
    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@part_change_lower_to_higher_numeric_group_float@part=1
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_float partition(part=1)
    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@part_change_lower_to_higher_numeric_group_float@part=1
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).b SIMPLE [(values__tmp__table__51)values__tmp__table__51.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__51)values__tmp__table__51.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).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,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=1
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=1
#### A masked pattern was here ####
insert_num	part	c1	b
1	1	-29.0764	original
2	1	753.7028	original
3	1	-5000.0	original
4	1	5.2927712E7	original
PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING)
POSTHOOK: type: ALTERTABLE_REPLACECOLS
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: query: insert into table part_change_lower_to_higher_numeric_group_float partition(part)
    values (5, '774', 'new', 2),
           (6, '561431', 'new', 2),
           (7, '256', 'new', 2),
           (8, '5555', 'new', 2),
           (9, '100', 'new', 1),
           (10, '17',  'new', 1)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__52
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: query: insert into table part_change_lower_to_higher_numeric_group_float partition(part)
    values (5, '774', 'new', 2),
           (6, '561431', 'new', 2),
           (7, '256', 'new', 2),
           (8, '5555', 'new', 2),
           (9, '100', 'new', 1),
           (10, '17',  'new', 1)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__52
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_float@part=1
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_float@part=2
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).b SIMPLE [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=2).b SIMPLE [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: part_change_lower_to_higher_numeric_group_float PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__52)values__tmp__table__52.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3
PREHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num
PREHOOK: type: QUERY
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=1
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num
POSTHOOK: type: QUERY
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=1
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float@part=2
#### A masked pattern was here ####
insert_num	part	c1	b
1	1	-29.0764	original
10	1	17.0	new
2	1	753.7028	original
3	1	-5000.0	original
4	1	5.2927712E7	original
5	2	774.0	new
6	2	561431.0	new
7	2	256.0	new
8	2	5555.0	new
9	1	100.0	new
PREHOOK: query: drop table part_change_lower_to_higher_numeric_group_float
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: query: drop table part_change_lower_to_higher_numeric_group_float
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@part_change_lower_to_higher_numeric_group_float
POSTHOOK: Output: default@part_change_lower_to_higher_numeric_group_float
PREHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
CREATE TABLE partitioned_update_1(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@partitioned_update_1
POSTHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
CREATE TABLE partitioned_update_1(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@partitioned_update_1
PREHOOK: query: insert into table partitioned_update_1 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__53
PREHOOK: Output: default@partitioned_update_1@part=1
POSTHOOK: query: insert into table partitioned_update_1 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__53
POSTHOOK: Output: default@partitioned_update_1@part=1
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__53)values__tmp__table__53.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).b SIMPLE [(values__tmp__table__53)values__tmp__table__53.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__53)values__tmp__table__53.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_update_1 add columns(c int, d string)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@partitioned_update_1
PREHOOK: Output: default@partitioned_update_1
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_update_1 add columns(c int, d string)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@partitioned_update_1
POSTHOOK: Output: default@partitioned_update_1
PREHOOK: query: insert into table partitioned_update_1 partition(part=2)
    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__54
PREHOOK: Output: default@partitioned_update_1@part=2
POSTHOOK: query: insert into table partitioned_update_1 partition(part=2)
    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__54
POSTHOOK: Output: default@partitioned_update_1@part=2
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__54)values__tmp__table__54.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=2).b SIMPLE [(values__tmp__table__54)values__tmp__table__54.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__54)values__tmp__table__54.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=2).d SIMPLE [(values__tmp__table__54)values__tmp__table__54.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__54)values__tmp__table__54.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: insert into table partitioned_update_1 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__55
PREHOOK: Output: default@partitioned_update_1@part=1
POSTHOOK: query: insert into table partitioned_update_1 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__55
POSTHOOK: Output: default@partitioned_update_1@part=1
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__55)values__tmp__table__55.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).b SIMPLE [(values__tmp__table__55)values__tmp__table__55.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__55)values__tmp__table__55.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).d SIMPLE [(values__tmp__table__55)values__tmp__table__55.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_update_1 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__55)values__tmp__table__55.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,part,a,b,c,d from partitioned_update_1
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_update_1
PREHOOK: Input: default@partitioned_update_1@part=1
PREHOOK: Input: default@partitioned_update_1@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from partitioned_update_1
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_update_1
POSTHOOK: Input: default@partitioned_update_1@part=1
POSTHOOK: Input: default@partitioned_update_1@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
1	1	1	original	NULL	NULL
10	1	6	new	200	two hundred
2	1	2	original	NULL	NULL
3	1	3	original	NULL	NULL
4	1	4	original	NULL	NULL
5	2	1	new	10	ten
6	2	2	new	20	twenty
7	2	3	new	30	thirty
8	2	4	new	40	forty
9	1	5	new	100	hundred
PREHOOK: query: -- UPDATE New Columns
update partitioned_update_1 set c=99
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_update_1
PREHOOK: Input: default@partitioned_update_1@part=1
PREHOOK: Input: default@partitioned_update_1@part=2
PREHOOK: Output: default@partitioned_update_1@part=1
PREHOOK: Output: default@partitioned_update_1@part=2
POSTHOOK: query: -- UPDATE New Columns
update partitioned_update_1 set c=99
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_update_1
POSTHOOK: Input: default@partitioned_update_1@part=1
POSTHOOK: Input: default@partitioned_update_1@part=2
POSTHOOK: Output: default@partitioned_update_1@part=1
POSTHOOK: Output: default@partitioned_update_1@part=2
row__id	insert_num	a	b	_c4	d	part
PREHOOK: query: select insert_num,part,a,b,c,d from partitioned_update_1
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_update_1
PREHOOK: Input: default@partitioned_update_1@part=1
PREHOOK: Input: default@partitioned_update_1@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from partitioned_update_1
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_update_1
POSTHOOK: Input: default@partitioned_update_1@part=1
POSTHOOK: Input: default@partitioned_update_1@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
1	1	1	original	99	NULL
10	1	6	new	99	two hundred
2	1	2	original	99	NULL
3	1	3	original	99	NULL
4	1	4	original	99	NULL
5	2	1	new	99	ten
6	2	2	new	99	twenty
7	2	3	new	99	thirty
8	2	4	new	99	forty
9	1	5	new	99	hundred
PREHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
CREATE TABLE partitioned_delete_1(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@partitioned_delete_1
POSTHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
CREATE TABLE partitioned_delete_1(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@partitioned_delete_1
PREHOOK: query: insert into table partitioned_delete_1 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__56
PREHOOK: Output: default@partitioned_delete_1@part=1
POSTHOOK: query: insert into table partitioned_delete_1 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__56
POSTHOOK: Output: default@partitioned_delete_1@part=1
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__56)values__tmp__table__56.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).b SIMPLE [(values__tmp__table__56)values__tmp__table__56.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__56)values__tmp__table__56.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_delete_1 add columns(c int, d string)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@partitioned_delete_1
PREHOOK: Output: default@partitioned_delete_1
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_delete_1 add columns(c int, d string)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@partitioned_delete_1
POSTHOOK: Output: default@partitioned_delete_1
PREHOOK: query: insert into table partitioned_delete_1 partition(part=2)
    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__57
PREHOOK: Output: default@partitioned_delete_1@part=2
POSTHOOK: query: insert into table partitioned_delete_1 partition(part=2)
    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__57
POSTHOOK: Output: default@partitioned_delete_1@part=2
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__57)values__tmp__table__57.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=2).b SIMPLE [(values__tmp__table__57)values__tmp__table__57.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__57)values__tmp__table__57.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=2).d SIMPLE [(values__tmp__table__57)values__tmp__table__57.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__57)values__tmp__table__57.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: insert into table partitioned_delete_1 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__58
PREHOOK: Output: default@partitioned_delete_1@part=1
POSTHOOK: query: insert into table partitioned_delete_1 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__58
POSTHOOK: Output: default@partitioned_delete_1@part=1
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__58)values__tmp__table__58.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).b SIMPLE [(values__tmp__table__58)values__tmp__table__58.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__58)values__tmp__table__58.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).d SIMPLE [(values__tmp__table__58)values__tmp__table__58.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_1 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__58)values__tmp__table__58.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select part,a,b,c,d from partitioned_delete_1
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_1
PREHOOK: Input: default@partitioned_delete_1@part=1
PREHOOK: Input: default@partitioned_delete_1@part=2
#### A masked pattern was here ####
POSTHOOK: query: select part,a,b,c,d from partitioned_delete_1
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_1
POSTHOOK: Input: default@partitioned_delete_1@part=1
POSTHOOK: Input: default@partitioned_delete_1@part=2
#### A masked pattern was here ####
part	a	b	c	d
1	1	original	NULL	NULL
1	2	original	NULL	NULL
1	3	original	NULL	NULL
1	4	original	NULL	NULL
1	5	new	100	hundred
1	6	new	200	two hundred
2	1	new	10	ten
2	2	new	20	twenty
2	3	new	30	thirty
2	4	new	40	forty
PREHOOK: query: -- DELETE where old column
delete from partitioned_delete_1 where a = 2 or a = 4 or a = 6
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_1
PREHOOK: Input: default@partitioned_delete_1@part=1
PREHOOK: Input: default@partitioned_delete_1@part=2
PREHOOK: Output: default@partitioned_delete_1@part=1
PREHOOK: Output: default@partitioned_delete_1@part=2
POSTHOOK: query: -- DELETE where old column
delete from partitioned_delete_1 where a = 2 or a = 4 or a = 6
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_1
POSTHOOK: Input: default@partitioned_delete_1@part=1
POSTHOOK: Input: default@partitioned_delete_1@part=2
POSTHOOK: Output: default@partitioned_delete_1@part=1
POSTHOOK: Output: default@partitioned_delete_1@part=2
row__id	part
PREHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_1
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_1
PREHOOK: Input: default@partitioned_delete_1@part=1
PREHOOK: Input: default@partitioned_delete_1@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_1
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_1
POSTHOOK: Input: default@partitioned_delete_1@part=1
POSTHOOK: Input: default@partitioned_delete_1@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
1	1	1	original	NULL	NULL
3	1	3	original	NULL	NULL
5	2	1	new	10	ten
7	2	3	new	30	thirty
9	1	5	new	100	hundred
PREHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
CREATE TABLE partitioned_delete_2(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@partitioned_delete_2
POSTHOOK: query: --
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
CREATE TABLE partitioned_delete_2(insert_num int, a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@partitioned_delete_2
PREHOOK: query: insert into table partitioned_delete_2 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__59
PREHOOK: Output: default@partitioned_delete_2@part=1
POSTHOOK: query: insert into table partitioned_delete_2 partition(part=1)
    values (1, 1, 'original'),
           (2, 2, 'original'),
           (3, 3, 'original'),
           (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__59
POSTHOOK: Output: default@partitioned_delete_2@part=1
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__59)values__tmp__table__59.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).b SIMPLE [(values__tmp__table__59)values__tmp__table__59.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__59)values__tmp__table__59.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_delete_2 add columns(c int, d string)
PREHOOK: type: ALTERTABLE_ADDCOLS
PREHOOK: Input: default@partitioned_delete_2
PREHOOK: Output: default@partitioned_delete_2
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
alter table partitioned_delete_2 add columns(c int, d string)
POSTHOOK: type: ALTERTABLE_ADDCOLS
POSTHOOK: Input: default@partitioned_delete_2
POSTHOOK: Output: default@partitioned_delete_2
PREHOOK: query: insert into table partitioned_delete_2 partition(part=2)
    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__60
PREHOOK: Output: default@partitioned_delete_2@part=2
POSTHOOK: query: insert into table partitioned_delete_2 partition(part=2)
    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__60
POSTHOOK: Output: default@partitioned_delete_2@part=2
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__60)values__tmp__table__60.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=2).b SIMPLE [(values__tmp__table__60)values__tmp__table__60.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=2).c EXPRESSION [(values__tmp__table__60)values__tmp__table__60.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=2).d SIMPLE [(values__tmp__table__60)values__tmp__table__60.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=2).insert_num EXPRESSION [(values__tmp__table__60)values__tmp__table__60.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: insert into table partitioned_delete_2 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__61
PREHOOK: Output: default@partitioned_delete_2@part=1
POSTHOOK: query: insert into table partitioned_delete_2 partition(part=1)
     values (9, 5, 'new', 100, 'hundred'),
            (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__61
POSTHOOK: Output: default@partitioned_delete_2@part=1
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__61)values__tmp__table__61.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).b SIMPLE [(values__tmp__table__61)values__tmp__table__61.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).c EXPRESSION [(values__tmp__table__61)values__tmp__table__61.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).d SIMPLE [(values__tmp__table__61)values__tmp__table__61.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
POSTHOOK: Lineage: partitioned_delete_2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__61)values__tmp__table__61.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0	_col1	_col2	_col3	_col4
PREHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_2
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_2
PREHOOK: Input: default@partitioned_delete_2@part=1
PREHOOK: Input: default@partitioned_delete_2@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_2
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_2
POSTHOOK: Input: default@partitioned_delete_2@part=1
POSTHOOK: Input: default@partitioned_delete_2@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
1	1	1	original	NULL	NULL
10	1	6	new	200	two hundred
2	1	2	original	NULL	NULL
3	1	3	original	NULL	NULL
4	1	4	original	NULL	NULL
5	2	1	new	10	ten
6	2	2	new	20	twenty
7	2	3	new	30	thirty
8	2	4	new	40	forty
9	1	5	new	100	hundred
PREHOOK: query: -- DELETE where new column
delete from partitioned_delete_2 where a = 1 or c = 30 or c == 100
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_2
PREHOOK: Input: default@partitioned_delete_2@part=1
PREHOOK: Input: default@partitioned_delete_2@part=2
PREHOOK: Output: default@partitioned_delete_2@part=1
PREHOOK: Output: default@partitioned_delete_2@part=2
POSTHOOK: query: -- DELETE where new column
delete from partitioned_delete_2 where a = 1 or c = 30 or c == 100
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_2
POSTHOOK: Input: default@partitioned_delete_2@part=1
POSTHOOK: Input: default@partitioned_delete_2@part=2
POSTHOOK: Output: default@partitioned_delete_2@part=1
POSTHOOK: Output: default@partitioned_delete_2@part=2
row__id	part
PREHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_2
PREHOOK: type: QUERY
PREHOOK: Input: default@partitioned_delete_2
PREHOOK: Input: default@partitioned_delete_2@part=1
PREHOOK: Input: default@partitioned_delete_2@part=2
#### A masked pattern was here ####
POSTHOOK: query: select insert_num,part,a,b,c,d from partitioned_delete_2
POSTHOOK: type: QUERY
POSTHOOK: Input: default@partitioned_delete_2
POSTHOOK: Input: default@partitioned_delete_2@part=1
POSTHOOK: Input: default@partitioned_delete_2@part=2
#### A masked pattern was here ####
insert_num	part	a	b	c	d
10	1	6	new	200	two hundred
2	1	2	original	NULL	NULL
3	1	3	original	NULL	NULL
4	1	4	original	NULL	NULL
6	2	2	new	20	twenty
8	2	4	new	40	forty
PREHOOK: query: DROP TABLE partitioned_update_1
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@partitioned_update_1
PREHOOK: Output: default@partitioned_update_1
POSTHOOK: query: DROP TABLE partitioned_update_1
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@partitioned_update_1
POSTHOOK: Output: default@partitioned_update_1
PREHOOK: query: DROP TABLE partitioned_delete_1
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@partitioned_delete_1
PREHOOK: Output: default@partitioned_delete_1
POSTHOOK: query: DROP TABLE partitioned_delete_1
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@partitioned_delete_1
POSTHOOK: Output: default@partitioned_delete_1
PREHOOK: query: DROP TABLE partitioned_delete_2
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@partitioned_delete_2
PREHOOK: Output: default@partitioned_delete_2
POSTHOOK: query: DROP TABLE partitioned_delete_2
POSTHOOK: type: DROPTABLE
POSTHOOK: Input: default@partitioned_delete_2
POSTHOOK: Output: default@partitioned_delete_2
