You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by mm...@apache.org on 2016/05/03 11:37:20 UTC
[01/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Repository: hive
Updated Branches:
refs/heads/master e1b038377 -> a16058e10
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_table.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_table.q.out
index aef9a74..ca292b1 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_table.q.out
@@ -2,297 +2,3736 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@table_add_int_permute_select,table_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@table_add_int_string_permute_select,table_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@table_change_string_group_double,table_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@table_change_date_group_string_group_timestamp,table_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@table_change_date_group_string_group_date,table_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=313)
+ default@table_change_numeric_group_string_group_multi_ints_string,table_change_numeric_group_string_group_multi_ints_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=422)
+ default@table_change_numeric_group_string_group_multi_ints_char,table_change_numeric_group_string_group_multi_ints_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2
<TRUNCATED>
[07/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
new file mode 100644
index 0000000..34795b1
--- /dev/null
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
@@ -0,0 +1,669 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_a_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_a_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:s1, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct1_a_txt.insert_num struct1_a_txt.s1 struct1_a_txt.b
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af} original
+2 1 {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af} original
+3 1 {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af} original
+4 1 {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af} original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_b_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_b_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).b SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).insert_num SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).s1 SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_b_txt.insert_num struct1_b_txt.s1 struct1_b_txt.b
+PREHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_c_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_c_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_c_txt.insert_num struct1_c_txt.s1 struct1_c_txt.b
+PREHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=785)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=785)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=6 width=785)
+ default@part_change_various_various_struct1,part_change_various_various_struct1,Tbl:COMPLETE,Col:NONE,Output:["insert_num","s1","b"]
+
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+PREHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"} original
+2 1 {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"} original
+3 1 {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"} original
+4 1 {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"} original
+5 2 {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"} new
+6 1 {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"} new
+PREHOOK: query: drop table part_change_various_various_struct1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: drop table part_change_various_various_struct1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1
+PREHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+insert_num part b
+1 1 original
+2 1 original
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_a_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_a_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_a_txt.insert_num struct2_a_txt.b struct2_a_txt.s2
+PREHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_b_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_b_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_b_txt.insert_num struct2_b_txt.b struct2_b_txt.s2
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af}
+4 1 new {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af}
+5 2 new {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af}
+6 2 new {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_c_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_c_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_c_txt.insert_num struct2_c_txt.b struct2_c_txt.s2
+PREHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_d_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_d_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_d_txt.insert_num struct2_d_txt.b struct2_d_txt.s2
+PREHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=8 width=610)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=8 width=610)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=8 width=610)
+ default@part_add_various_various_struct2,part_add_various_various_struct2,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s2"]
+
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}
+4 1 new {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}
+5 2 new {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}
+6 2 new {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}
+7 2 new {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}
+8 1 new {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}
+PREHOOK: query: drop table part_add_various_various_struct2
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: drop table part_add_various_various_struct2
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_a_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_a_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint>, comment:null), ]
+struct4_a_txt.insert_num struct4_a_txt.b struct4_a_txt.s3
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_b_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_b_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).b SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).insert_num SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).s3 SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_b_txt.insert_num struct4_b_txt.b struct4_b_txt.s3
+PREHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_c_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_c_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_c_txt.insert_num struct4_c_txt.b struct4_c_txt.s3
+PREHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=4 width=289)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=4 width=289)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=4 width=289)
+ default@part_add_to_various_various_struct4,part_add_to_various_various_struct4,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s3"]
+
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+3 2 new {"c1":true,"c2":null,"c3":null,"c4":-100,"c5":953967041,"c6":62.07915,"c7":718.78,"c8":1,"c9":"verdict ","c10":"verdict","c11":null,"c12":null,"c13":n)\u06af}
+4 1 new {"c1":false,"c2":-67,"c3":833,"c4":63993,"c5":1255178165,"c6":905071.0,"c7":-4314.7918,"c8":-1240033819,"c9":"trial ","c10":"trial","c11":null,"c12":"2016-03-07","c13":n)\u06af}
+PREHOOK: query: drop table part_add_to_various_various_struct4
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: drop table part_add_to_various_various_struct4
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
[33/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part.q
index 0fbcadb..859dc65 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part.q
@@ -1,98 +1,825 @@
+set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
--- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+--
+CREATE TABLE part_add_int_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_permute_select;
-insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table part_add_int_permute_select partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned1 add columns(c int, d string);
+alter table part_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED part_add_int_permute_select;
+
+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);
-insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table part_add_int_permute_select partition(part=1)
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
+select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_permute_select order by insert_num;
+
+drop table part_add_int_permute_select;
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table part_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+insert into table part_add_int_string_permute_select partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num;
+
+-- 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;
+select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,d from part_add_int_string_permute_select order by insert_num;
+
+drop table part_add_int_string_permute_select;
-insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int;
+alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
-insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+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');
-insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new');
+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');
-select part,a,b from partitioned2;
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+drop table part_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
-insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+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');
--- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string);
+-- 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);
-insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1);
+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');
+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');
--- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+drop table part_change_date_group_string_group_timestamp;
+
+
+
+--
+-- 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);
+
+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');
+
+-- 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);
+
+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');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+drop table part_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_string;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char;
+
+
+--
+-- 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);
+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');
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+drop table part_change_string_group_string_group_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+drop table part_change_string_group_string_group_char;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+drop table part_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
+
+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');
-insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned4 change column a a int;
+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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_decimal;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+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);
-insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1);
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
-select part,a,b from partitioned4;
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+drop table part_change_lower_to_higher_numeric_group_float;
-DROP TABLE partitioned1;
-DROP TABLE partitioned2;
-DROP TABLE partitioned3;
-DROP TABLE partitioned4;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q
new file mode 100644
index 0000000..27cea8d
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q
@@ -0,0 +1,162 @@
+set hive.explain.user=true;
+set hive.mapred.mode=nonstrict;
+set hive.cli.print.header=true;
+SET hive.exec.schema.evolution=true;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
+set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
+set hive.exec.dynamic.partition.mode=nonstrict;
+set hive.metastore.disallow.incompatible.col.type.changes=false;
+set hive.default.fileformat=orc;
+
+-- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT);
+
+CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt;
+
+insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt;
+
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING);
+
+CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt;
+
+insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt;
+
+CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt;
+
+insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt;
+
+explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+drop table part_change_various_various_struct1;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original');
+
+select insert_num,part,b from part_add_various_various_struct2 order by insert_num;
+
+-- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>);
+
+CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt;
+
+insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt;
+
+CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt;
+
+insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt;
+
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>);
+
+CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt;
+
+insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt;
+
+CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt;
+
+insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt;
+
+explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+drop table part_add_various_various_struct2;
+
+
+
+
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT);
+
+CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt;
+
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>);
+
+CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt;
+
+CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt;
+
+explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+drop table part_add_to_various_various_struct4;
[27/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_table.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_table.q.out
index 4885aeb..b1214e0 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_table.q.out
@@ -2,291 +2,2918 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Table
+-- *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 table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__19
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__19
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__20
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__20
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 48377 -2386 original
+10 17 90000 75407 32890 new
+2 -2 -6737 56 28899 original
+3 NULL 4957 83222 90000 original
+4 0 20435 84749 -9999 original
+5 2000 72909 32442 -9322 new
+6 1 200 23233 54309 new
+7 256 32768 31889 47061 new
+8 5555 40000 -7190 81066 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__21
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__21
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__22
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__22
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__23
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__23
+POSTHOOK: Output: default@table_chan
<TRUNCATED>
[35/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q
index 9c66243..8f33636 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q
@@ -1,98 +1,825 @@
+set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=more;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+--
+CREATE TABLE part_add_int_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_permute_select;
-insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table part_add_int_permute_select partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned1 add columns(c int, d string);
+alter table part_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED part_add_int_permute_select;
+
+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);
-insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table part_add_int_permute_select partition(part=1)
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
+select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_permute_select order by insert_num;
+
+drop table part_add_int_permute_select;
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table part_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+insert into table part_add_int_string_permute_select partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num;
+
+-- 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;
+select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,d from part_add_int_string_permute_select order by insert_num;
+
+drop table part_add_int_string_permute_select;
-insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int;
+alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
-insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+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');
-insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new');
+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');
-select part,a,b from partitioned2;
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+drop table part_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
-insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+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');
--- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string);
+-- 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);
-insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1);
+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');
+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');
--- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+drop table part_change_date_group_string_group_timestamp;
+
+
+
+--
+-- 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);
+
+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');
+
+-- 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);
+
+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');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+drop table part_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_string;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char;
+
+
+--
+-- 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);
+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');
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+drop table part_change_string_group_string_group_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+drop table part_change_string_group_string_group_char;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+drop table part_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
+
+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');
-insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned4 change column a a int;
+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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_decimal;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+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);
-insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1);
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
-select part,a,b from partitioned4;
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+drop table part_change_lower_to_higher_numeric_group_float;
-DROP TABLE partitioned1;
-DROP TABLE partitioned2;
-DROP TABLE partitioned3;
-DROP TABLE partitioned4;
\ No newline at end of file
[17/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q.out
new file mode 100644
index 0000000..62047fb
--- /dev/null
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q.out
@@ -0,0 +1,726 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_a_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_a_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:s1, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct1_a_txt.insert_num struct1_a_txt.s1 struct1_a_txt.b
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af} original
+2 1 {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af} original
+3 1 {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af} original
+4 1 {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af} original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_b_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_b_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).b SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).insert_num SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).s1 SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_b_txt.insert_num struct1_b_txt.s1 struct1_b_txt.b
+PREHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_c_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_c_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_c_txt.insert_num struct1_c_txt.s1 struct1_c_txt.b
+PREHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_struct1
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), s1 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+PREHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"} original
+2 1 {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"} original
+3 1 {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"} original
+4 1 {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"} original
+5 2 {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"} new
+6 1 {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"} new
+PREHOOK: query: drop table part_change_various_various_struct1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: drop table part_change_various_various_struct1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1
+PREHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+insert_num part b
+1 1 original
+2 1 original
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_a_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_a_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_a_txt.insert_num struct2_a_txt.b struct2_a_txt.s2
+PREHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_b_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_b_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_b_txt.insert_num struct2_b_txt.b struct2_b_txt.s2
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af}
+4 1 new {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af}
+5 2 new {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af}
+6 2 new {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_c_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_c_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_c_txt.insert_num struct2_c_txt.b struct2_c_txt.s2
+PREHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_d_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_d_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_d_txt.insert_num struct2_d_txt.b struct2_d_txt.s2
+PREHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_various_various_struct2
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), b (type: string), s2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}
+4 1 new {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}
+5 2 new {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}
+6 2 new {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}
+7 2 new {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}
+8 1 new {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}
+PREHOOK: query: drop table part_add_various_various_struct2
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: drop table part_add_various_various_struct2
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_a_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_a_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint>, comment:null), ]
+struct4_a_txt.insert_num struct4_a_txt.b struct4_a_txt.s3
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_b_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_b_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).b SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).insert_num SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).s3 SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_b_txt.insert_num struct4_b_txt.b struct4_b_txt.s3
+PREHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_c_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_c_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_c_txt.insert_num struct4_c_txt.b struct4_c_txt.s3
+PREHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_to_various_various_struct4
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), b (type: string), s3 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+3 2 new {"c1":true,"c2":null,"c3":null,"c4":-100,"c5":953967041,"c6":62.07915,"c7":718.78,"c8":1,"c9":"verdict ","c10":"verdict","c11":null,"c12":null,"c13":n)\u06af}
+4 1 new {"c1":false,"c2":-67,"c3":833,"c4":63993,"c5":1255178165,"c6":905071.0,"c7":-4314.7918,"c8":-1240033819,"c9":"trial ","c10":"trial","c11":null,"c12":"2016-03-07","c13":n)\u06af}
+PREHOOK: query: drop table part_add_to_various_various_struct4
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: drop table part_add_to_various_various_struct4
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
[08/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part.q.out
index dc2fd9a..7650097 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part.q.out
@@ -1,642 +1,3995 @@
PREHOOK: query: -- SORT_QUERY_RESULTS
--
--- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
--- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@part_add_int_permute_select,part_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@part_add_int_string_permute_select,part_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@part_change_string_group_double,part_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@part_change_date_group_string_group_timestamp,part_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@part_change_date_group_string_group_date,part_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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: (TIN
<TRUNCATED>
[41/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
HIVE-13178: Enhance ORC Schema Evolution to handle more standard data type conversions (Matt McCline, reviewed by Prasanth Jayachandran)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/a16058e1
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/a16058e1
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/a16058e1
Branch: refs/heads/master
Commit: a16058e10025d9f7af75c2283727c7c176b770e2
Parents: e1b0383
Author: Matt McCline <mm...@hortonworks.com>
Authored: Tue May 3 02:35:00 2016 -0700
Committer: Matt McCline <mm...@hortonworks.com>
Committed: Tue May 3 02:35:00 2016 -0700
----------------------------------------------------------------------
.../org/apache/hadoop/hive/conf/HiveConf.java | 2 +-
.../test/resources/testconfiguration.properties | 4 +
.../org/apache/hadoop/hive/ql/exec/DDLTask.java | 53 -
.../hive/ql/exec/vector/VectorExtractRow.java | 12 +-
.../ql/exec/vector/VectorizationContext.java | 2 +-
.../ql/io/orc/ConvertTreeReaderFactory.java | 3750 +++++++++++++
.../hadoop/hive/ql/io/orc/SchemaEvolution.java | 29 +-
.../hive/ql/io/orc/TreeReaderFactory.java | 86 +-
.../clientnegative/orc_replace_columns2.q | 5 +-
.../clientnegative/orc_replace_columns2_acid.q | 5 +-
.../clientnegative/orc_replace_columns3.q | 3 +
.../clientnegative/orc_replace_columns3_acid.q | 3 +
.../clientnegative/orc_type_promotion1.q | 7 +-
.../clientnegative/orc_type_promotion1_acid.q | 7 +-
.../clientnegative/orc_type_promotion2.q | 5 +-
.../clientnegative/orc_type_promotion2_acid.q | 5 +-
.../clientnegative/orc_type_promotion3.q | 5 +-
.../clientnegative/orc_type_promotion3_acid.q | 5 +-
.../clientpositive/orc_int_type_promotion.q | 4 +
.../clientpositive/orc_schema_evolution.q | 2 +
.../schema_evol_orc_acid_mapwork_part.q | 846 ++-
.../schema_evol_orc_acid_mapwork_table.q | 804 ++-
.../schema_evol_orc_acidvec_mapwork_part.q | 843 ++-
.../schema_evol_orc_acidvec_mapwork_table.q | 801 ++-
.../schema_evol_orc_nonvec_fetchwork_part.q | 831 ++-
.../schema_evol_orc_nonvec_fetchwork_table.q | 824 ++-
.../schema_evol_orc_nonvec_mapwork_part.q | 833 ++-
...a_evol_orc_nonvec_mapwork_part_all_complex.q | 162 +
...evol_orc_nonvec_mapwork_part_all_primitive.q | 481 ++
.../schema_evol_orc_nonvec_mapwork_table.q | 824 ++-
.../schema_evol_orc_vec_mapwork_part.q | 831 ++-
...hema_evol_orc_vec_mapwork_part_all_complex.q | 162 +
...ma_evol_orc_vec_mapwork_part_all_primitive.q | 481 ++
.../schema_evol_orc_vec_mapwork_table.q | 819 ++-
.../schema_evol_text_nonvec_mapwork_part.q | 5 +-
..._evol_text_nonvec_mapwork_part_all_complex.q | 5 +-
...vol_text_nonvec_mapwork_part_all_primitive.q | 5 +-
.../schema_evol_text_nonvec_mapwork_table.q | 5 +-
.../schema_evol_text_vec_mapwork_part.q | 2 +-
...ema_evol_text_vec_mapwork_part_all_complex.q | 2 +-
...a_evol_text_vec_mapwork_part_all_primitive.q | 2 +-
.../schema_evol_text_vec_mapwork_table.q | 2 +-
.../schema_evol_text_vecrow_mapwork_part.q | 2 +-
..._evol_text_vecrow_mapwork_part_all_complex.q | 2 +-
...vol_text_vecrow_mapwork_part_all_primitive.q | 2 +-
.../schema_evol_text_vecrow_mapwork_table.q | 2 +-
.../clientnegative/orc_replace_columns2.q.out | 13 +-
.../orc_replace_columns2_acid.q.out | 13 +-
.../clientnegative/orc_replace_columns3.q.out | 11 +-
.../orc_replace_columns3_acid.q.out | 11 +-
.../clientnegative/orc_type_promotion1.q.out | 13 +-
.../orc_type_promotion1_acid.q.out | 13 +-
.../clientnegative/orc_type_promotion2.q.out | 13 +-
.../orc_type_promotion2_acid.q.out | 13 +-
.../clientnegative/orc_type_promotion3.q.out | 11 +-
.../clientnegative/orc_type_promotion3_acid.q | 18 +
.../orc_type_promotion3_acid.q.out | 11 +-
.../schema_evol_orc_acid_mapwork_part.q.out | 4319 ++++++++++++---
.../schema_evol_orc_acid_mapwork_table.q.out | 3334 ++++++++++--
.../schema_evol_orc_acidvec_mapwork_part.q.out | 4319 ++++++++++++---
.../schema_evol_orc_acidvec_mapwork_table.q.out | 3334 ++++++++++--
.../schema_evol_orc_nonvec_fetchwork_part.q.out | 4905 +++++++++++++++--
...schema_evol_orc_nonvec_fetchwork_table.q.out | 4367 +++++++++++++++-
.../schema_evol_orc_nonvec_mapwork_part.q.out | 4909 +++++++++++++++--
...ol_orc_nonvec_mapwork_part_all_complex.q.out | 726 +++
..._orc_nonvec_mapwork_part_all_primitive.q.out | 2872 ++++++++++
.../schema_evol_orc_nonvec_mapwork_table.q.out | 4367 +++++++++++++++-
.../schema_evol_orc_vec_mapwork_part.q.out | 4929 ++++++++++++++++--
..._evol_orc_vec_mapwork_part_all_complex.q.out | 726 +++
...vol_orc_vec_mapwork_part_all_primitive.q.out | 2887 ++++++++++
.../schema_evol_orc_vec_mapwork_table.q.out | 4391 +++++++++++++++-
.../tez/schema_evol_orc_acid_mapwork_part.q.out | 4319 ++++++++++++---
.../schema_evol_orc_acid_mapwork_table.q.out | 3334 ++++++++++--
.../schema_evol_orc_acidvec_mapwork_part.q.out | 4319 ++++++++++++---
.../schema_evol_orc_acidvec_mapwork_table.q.out | 3334 ++++++++++--
.../schema_evol_orc_nonvec_fetchwork_part.q.out | 4449 ++++++++++++++--
...schema_evol_orc_nonvec_fetchwork_table.q.out | 3911 +++++++++++++-
.../schema_evol_orc_nonvec_mapwork_part.q.out | 4453 ++++++++++++++--
...ol_orc_nonvec_mapwork_part_all_complex.q.out | 669 +++
..._orc_nonvec_mapwork_part_all_primitive.q.out | 2587 +++++++++
.../schema_evol_orc_nonvec_mapwork_table.q.out | 3911 +++++++++++++-
.../tez/schema_evol_orc_vec_mapwork_part.q.out | 4449 ++++++++++++++--
..._evol_orc_vec_mapwork_part_all_complex.q.out | 669 +++
...vol_orc_vec_mapwork_part_all_primitive.q.out | 2587 +++++++++
.../tez/schema_evol_orc_vec_mapwork_table.q.out | 3911 +++++++++++++-
85 files changed, 100951 insertions(+), 10048 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
----------------------------------------------------------------------
diff --git a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
index caadf2a..06a6906 100644
--- a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
+++ b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
@@ -1106,7 +1106,7 @@ public class HiveConf extends Configuration {
"than this threshold, it will try to convert the common join into map join"),
- HIVE_SCHEMA_EVOLUTION("hive.exec.schema.evolution", false,
+ HIVE_SCHEMA_EVOLUTION("hive.exec.schema.evolution", true,
"Use schema evolution to convert self-describing file format's data to the schema desired by the reader."),
HIVE_TRANSACTIONAL_TABLE_SCAN("hive.transactional.table.scan", false,
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/itests/src/test/resources/testconfiguration.properties
----------------------------------------------------------------------
diff --git a/itests/src/test/resources/testconfiguration.properties b/itests/src/test/resources/testconfiguration.properties
index c791ede..88381aa 100644
--- a/itests/src/test/resources/testconfiguration.properties
+++ b/itests/src/test/resources/testconfiguration.properties
@@ -193,8 +193,12 @@ minitez.query.files.shared=acid_globallimit.q,\
schema_evol_orc_nonvec_fetchwork_part.q,\
schema_evol_orc_nonvec_fetchwork_table.q,\
schema_evol_orc_nonvec_mapwork_part.q,\
+ schema_evol_orc_nonvec_mapwork_part_all_complex.q,\
+ schema_evol_orc_nonvec_mapwork_part_all_primitive.q,\
schema_evol_orc_nonvec_mapwork_table.q,\
schema_evol_orc_vec_mapwork_part.q,\
+ schema_evol_orc_vec_mapwork_part_all_complex.q,\
+ schema_evol_orc_vec_mapwork_part_all_primitive.q,\
schema_evol_orc_vec_mapwork_table.q,\
schema_evol_text_nonvec_mapwork_part.q,\
schema_evol_text_nonvec_mapwork_part_all_complex.q,\
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
index 5c20caa..9887d77 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
@@ -3363,12 +3363,6 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
&& !oldColName.equalsIgnoreCase(oldName)) {
throw new HiveException(ErrorMsg.DUPLICATE_COLUMN_NAMES, newName);
} else if (oldColName.equalsIgnoreCase(oldName)) {
- // if orc table, restrict changing column types. Only integer type promotion is supported.
- // smallint -> int -> bigint
- if (isOrcSchemaEvolution && !isSupportedTypeChange(col.getType(), type)) {
- throw new HiveException(ErrorMsg.CANNOT_CHANGE_COLUMN_TYPE, col.getType(), type,
- newName);
- }
col.setName(newName);
if (type != null && !type.trim().equals("")) {
col.setType(type);
@@ -3435,15 +3429,6 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
if (replaceCols.size() < existingCols.size()) {
throw new HiveException(ErrorMsg.REPLACE_CANNOT_DROP_COLUMNS, alterTbl.getOldName());
}
-
- for (int i = 0; i < existingCols.size(); i++) {
- final String currentColType = existingCols.get(i).getType().toLowerCase().trim();
- final String newColType = replaceCols.get(i).getType().toLowerCase().trim();
- if (!isSupportedTypeChange(currentColType, newColType)) {
- throw new HiveException(ErrorMsg.REPLACE_UNSUPPORTED_TYPE_CONVERSION, currentColType,
- newColType, replaceCols.get(i).getName());
- }
- }
}
sd.setCols(alterTbl.getNewCols());
} else if (alterTbl.getOp() == AlterTableDesc.AlterTableTypes.ADDPROPS) {
@@ -3611,44 +3596,6 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
return 0;
}
- // don't change the order of enums as ordinal values are used to check for valid type promotions
- enum PromotableTypes {
- SMALLINT,
- INT,
- BIGINT;
-
- static List<String> types() {
- return ImmutableList.of(SMALLINT.toString().toLowerCase(),
- INT.toString().toLowerCase(), BIGINT.toString().toLowerCase());
- }
- }
-
- // for ORC, only supported type promotions are smallint -> int -> bigint. No other
- // type promotions are supported at this point
- private boolean isSupportedTypeChange(String currentType, String newType) {
- if (currentType != null && newType != null) {
- currentType = currentType.toLowerCase().trim();
- newType = newType.toLowerCase().trim();
- // no type change
- if (currentType.equals(newType)) {
- return true;
- }
- if (PromotableTypes.types().contains(currentType)
- && PromotableTypes.types().contains(newType)) {
- PromotableTypes pCurrentType = PromotableTypes.valueOf(currentType.toUpperCase());
- PromotableTypes pNewType = PromotableTypes.valueOf(newType.toUpperCase());
- if (pNewType.ordinal() >= pCurrentType.ordinal()) {
- return true;
- } else {
- return false;
- }
- } else {
- return false;
- }
- }
- return true;
- }
-
/**
* Drop a given table or some partitions. DropTableDesc is currently used for both.
*
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExtractRow.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExtractRow.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExtractRow.java
index c965dc8..b7b5ae8 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExtractRow.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExtractRow.java
@@ -264,7 +264,7 @@ public class VectorExtractRow {
int length = bytesColVector.length[adjustedIndex];
if (bytes == null) {
- LOG.info("null string entry: batchIndex " + batchIndex + " projection column num " + projectionColumnNum);
+ nullBytesReadError(primitiveCategory, batchIndex, projectionColumnNum);
}
// Use org.apache.hadoop.io.Text as our helper to go from byte[] to String.
@@ -280,7 +280,7 @@ public class VectorExtractRow {
int length = bytesColVector.length[adjustedIndex];
if (bytes == null) {
- LOG.info("null varchar entry: batchIndex " + batchIndex + " projection column num " + projectionColumnNum);
+ nullBytesReadError(primitiveCategory, batchIndex, projectionColumnNum);
}
int adjustedLength = StringExpr.truncate(bytes, start, length,
@@ -299,7 +299,7 @@ public class VectorExtractRow {
int length = bytesColVector.length[adjustedIndex];
if (bytes == null) {
- LOG.info("null char entry: batchIndex " + batchIndex + " projection column num " + projectionColumnNum);
+ nullBytesReadError(primitiveCategory, batchIndex, projectionColumnNum);
}
int adjustedLength = StringExpr.rightTrimAndTruncate(bytes, start, length,
@@ -343,4 +343,10 @@ public class VectorExtractRow {
objects[i] = extractRowColumn(batch, batchIndex, i);
}
}
+
+ private void nullBytesReadError(PrimitiveCategory primitiveCategory, int batchIndex,
+ int projectionColumnNum) {
+ throw new RuntimeException("null " + primitiveCategory.name() +
+ " entry: batchIndex " + batchIndex + " projection column num " + projectionColumnNum);
+ }
}
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
index 5c55011..5454ba3 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
@@ -787,7 +787,7 @@ public class VectorizationContext {
|| arg0Type(expr).equals("float"))) {
return true;
} else if (gudf instanceof GenericUDFBetween && (mode == Mode.PROJECTION)) {
- // between has 4 args here, but can be vectorized like this
+ // between has 4 args here, but can be vectorized like this
return true;
}
return false;
[23/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q.out
index 93f4dcc..912463b 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q.out
@@ -2,297 +2,4192 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: double), _col2 (type: double), _col3 (type: double), _col4 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: double), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_date
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_numeric_group_string_group_multi_ints_string
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: string), c3 (type: string), c4 (type: string), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: string), VALUE._col2 (type: string), VALUE._col3 (type: string), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1
<TRUNCATED>
[15/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_table.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_table.q.out
index aef9a74..a305847 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_table.q.out
@@ -2,297 +2,4216 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: double), _col2 (type: double), _col3 (type: double), _col4 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: double), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_date
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_numeric_group_string_group_multi_ints_string
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: string), c3 (type: string), c4 (type: string), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: string), VALUE._col2 (type: string), VALUE._col3 (type: string), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table
<TRUNCATED>
[04/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part.q.out
index 9f1fda8..15c86b9 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part.q.out
@@ -2,641 +2,3994 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@part_add_int_permute_select,part_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@part_add_int_string_permute_select,part_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@part_change_string_group_double,part_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@part_change_date_group_string_group_timestamp,part_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@part_change_date_group_string_group_date,part_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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
+--
+
<TRUNCATED>
[19/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_table.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_table.q.out
index df9494f..f007ba8 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_table.q.out
@@ -2,297 +2,4192 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string)
+ outputColumnNames: _col0, _col1, _col2
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: double), _col2 (type: double), _col3 (type: double), _col4 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: double), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_date_group_string_group_date
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: char(50)), _col3 (type: char(15)), _col4 (type: varchar(50)), _col5 (type: varchar(15)), _col6 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: char(50)), VALUE._col2 (type: char(15)), VALUE._col3 (type: varchar(50)), VALUE._col4 (type: varchar(15)), VALUE._col5 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4764 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: table_change_numeric_group_string_group_multi_ints_string
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), c1 (type: string), c2 (type: string), c3 (type: string), c4 (type: string), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: string), _col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: string), VALUE._col1 (type: string), VALUE._col2 (type: string), VALUE._col3 (type: string), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 3136 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(v
<TRUNCATED>
[03/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_complex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_complex.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_complex.q.out
new file mode 100644
index 0000000..c91eb0b
--- /dev/null
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_complex.q.out
@@ -0,0 +1,669 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_a_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_a_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:s1, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct1_a_txt.insert_num struct1_a_txt.s1 struct1_a_txt.b
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af} original
+2 1 {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af} original
+3 1 {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af} original
+4 1 {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af} original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_b_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_b_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).b SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).insert_num SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).s1 SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_b_txt.insert_num struct1_b_txt.s1 struct1_b_txt.b
+PREHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_c_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_c_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_c_txt.insert_num struct1_c_txt.s1 struct1_c_txt.b
+PREHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=785)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=785)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=6 width=785)
+ default@part_change_various_various_struct1,part_change_various_various_struct1,Tbl:COMPLETE,Col:NONE,Output:["insert_num","s1","b"]
+
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+PREHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"} original
+2 1 {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"} original
+3 1 {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"} original
+4 1 {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"} original
+5 2 {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"} new
+6 1 {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"} new
+PREHOOK: query: drop table part_change_various_various_struct1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: drop table part_change_various_various_struct1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1
+PREHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+insert_num part b
+1 1 original
+2 1 original
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_a_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_a_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_a_txt.insert_num struct2_a_txt.b struct2_a_txt.s2
+PREHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_b_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_b_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_b_txt.insert_num struct2_b_txt.b struct2_b_txt.s2
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af}
+4 1 new {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af}
+5 2 new {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af}
+6 2 new {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_c_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_c_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_c_txt.insert_num struct2_c_txt.b struct2_c_txt.s2
+PREHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_d_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_d_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_d_txt.insert_num struct2_d_txt.b struct2_d_txt.s2
+PREHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=8 width=610)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=8 width=610)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=8 width=610)
+ default@part_add_various_various_struct2,part_add_various_various_struct2,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s2"]
+
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}
+4 1 new {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}
+5 2 new {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}
+6 2 new {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}
+7 2 new {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}
+8 1 new {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}
+PREHOOK: query: drop table part_add_various_various_struct2
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: drop table part_add_various_various_struct2
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_a_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_a_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint>, comment:null), ]
+struct4_a_txt.insert_num struct4_a_txt.b struct4_a_txt.s3
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_b_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_b_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).b SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).insert_num SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).s3 SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_b_txt.insert_num struct4_b_txt.b struct4_b_txt.s3
+PREHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_c_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_c_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_c_txt.insert_num struct4_c_txt.b struct4_c_txt.s3
+PREHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=4 width=289)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=4 width=289)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=4 width=289)
+ default@part_add_to_various_various_struct4,part_add_to_various_various_struct4,Tbl:COMPLETE,Col:NONE,Output:["insert_num","b","s3"]
+
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+3 2 new {"c1":true,"c2":null,"c3":null,"c4":-100,"c5":953967041,"c6":62.07915,"c7":718.78,"c8":1,"c9":"verdict ","c10":"verdict","c11":null,"c12":null,"c13":n)\u06af}
+4 1 new {"c1":false,"c2":-67,"c3":833,"c4":63993,"c5":1255178165,"c6":905071.0,"c7":-4314.7918,"c8":-1240033819,"c9":"trial ","c10":"trial","c11":null,"c12":"2016-03-07","c13":n)\u06af}
+PREHOOK: query: drop table part_add_to_various_various_struct4
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: drop table part_add_to_various_various_struct4
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
[18/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part.q.out
index 9f1fda8..b3cd95b 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part.q.out
@@ -2,641 +2,4474 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: double), _col3 (type: double), _col4 (type: double), _col5 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: double), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: char(50)), _col4 (type: char(15)), _col5 (type: varchar(50)), _col6 (type: varchar(15)), _col7 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: char(50)), VALUE._col3 (type: char(15)), VALUE._col4 (type: varchar(50)), VALUE._col5 (type: varchar(15)), VALUE._col6 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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
<TRUNCATED>
[09/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_table.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_table.q.out
index 93f4dcc..8a9481f 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_table.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_table.q.out
@@ -2,297 +2,3736 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@table_add_int_permute_select,table_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@table_add_int_string_permute_select,table_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@table_change_string_group_double,table_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@table_change_date_group_string_group_timestamp,table_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@table_change_date_group_string_group_date,table_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=313)
+ default@table_change_numeric_group_string_group_multi_ints_string,table_change_numeric_group_string_group_multi_ints_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=422)
+ default@table_change_numeric_group_string_group_multi_ints_char,table_change_numeric_group_string_group_multi_ints_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56
<TRUNCATED>
[16/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
new file mode 100644
index 0000000..bd309e6
--- /dev/null
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
@@ -0,0 +1,2887 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 true 0004-09-22 18:26:29.519542222 original
+2 1 45 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 NULL NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 6229-06-28 02:54:28.970117179 original
+4 1 1 NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 time will come 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_boolean
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: boolean), c2 (type: boolean), c3 (type: boolean), c4 (type: boolean), c5 (type: boolean), c6 (type: boolean), c7 (type: boolean), c8 (type: boolean), c9 (type: boolean), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col6 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col10 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+PREHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+POSTHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL true true true true true true NULL true original
+2 1 true true true true true true true NULL true original
+3 1 NULL NULL true true true true true true true original
+4 1 true NULL true true true true true NULL true original
+5 2 true true false true true false false true false new
+6 1 true true true false true true false true true new
+PREHOOK: query: drop table part_change_various_various_boolean
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: drop table part_change_various_various_boolean
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_tinyint
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: tinyint), c2 (type: tinyint), c3 (type: tinyint), c4 (type: tinyint), c5 (type: tinyint), c6 (type: tinyint), c7 (type: tinyint), c8 (type: tinyint), c9 (type: tinyint), c10 (type: tinyint), c11 (type: tinyint), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: tinyint), _col3 (type: tinyint), _col4 (type: tinyint), _col5 (type: tinyint), _col6 (type: tinyint), _col7 (type: tinyint), _col8 (type: tinyint), _col9 (type: tinyint), _col10 (type: tinyint), _col11 (type: tinyint), _col12 (type: tinyint), _col13 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: tinyint), VALUE._col2 (type: tinyint), VALUE._col3 (type: tinyint), VALUE._col4 (type: tinyint), VALUE._col5 (type: tinyint), VALUE._col6 (type: tinyint), VALUE._col7 (type: tinyint), VALUE._col8 (type: tinyint), VALUE._col9 (type: tinyint), VALUE._col10 (type: tinyint), VALUE._col11 (type: tinyint), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+PREHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 -48 -51 -66 -29 119 119 73 73 73 -43 original
+2 1 1 -24 -63 -25 -67 34 34 NULL NULL NULL 105 original
+3 1 0 NULL -66 -38 30 85 85 1 1 1 84 original
+4 1 1 NULL 87 6 34 36 36 -77 -77 -77 60 original
+5 2 23 71 127 1 NULL -60 68 NULL NULL 40 93 new
+6 1 NULL 85 -126 NULL 91 113 -28 -63 0 8 NULL new
+PREHOOK: query: drop table part_change_various_various_tinyint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: drop table part_change_various_various_tinyint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_smallint
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: smallint), c2 (type: smallint), c3 (type: smallint), c4 (type: smallint), c5 (type: smallint), c6 (type: smallint), c7 (type: smallint), c8 (type: smallint), c9 (type: smallint), c10 (type: smallint), c11 (type: smallint), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: smallint), _col3 (type: smallint), _col4 (type: smallint), _col5 (type: smallint), _col6 (type: smallint), _col7 (type: smallint), _col8 (type: smallint), _col9 (type: smallint), _col10 (type: smallint), _col11 (type: smallint), _col12 (type: smallint), _col13 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: smallint), VALUE._col2 (type: smallint), VALUE._col3 (type: smallint), VALUE._col4 (type: smallint), VALUE._col5 (type: smallint), VALUE._col6 (type: smallint), VALUE._col7 (type: smallint), VALUE._col8 (type: smallint), VALUE._col9 (type: smallint), VALUE._col10 (type: smallint), VALUE._col11 (type: smallint), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+PREHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+POSTHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL 7373 -32578 -29 119 119 -2999 -2999 -2999 -11819 original
+2 1 1 100 25025 29415 -3651 -19422 -19422 NULL NULL NULL 29801 original
+3 1 0 72 -32578 -27686 30 -939 -939 1 1 1 -8620 original
+4 1 1 -90 14935 12294 -19422 9764 9764 5299 5299 5299 -17092 original
+5 2 -30486 15230 3117 1 -117 -7131 20227 -24858 -28771 NULL NULL new
+6 1 -10542 -1805 -4844 15507 91 22385 -28 -12268 0 NULL 774 new
+PREHOOK: query: drop table part_change_various_various_smallint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: drop table part_change_various_various_smallint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_int
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: int), c2 (type: int), c3 (type: int), c4 (type: int), c5 (type: int), c6 (type: int), c7 (type: int), c8 (type: int), c9 (type: int), c10 (type: int), c11 (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: int), _col4 (type: int), _col5 (type: int), _col6 (type: int), _col7 (type: int), _col8 (type: int), _col9 (type: int), _col10 (type: int), _col11 (type: int), _col12 (type: int), _col13 (type: string)
+ Execution mode: vectorized
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: int), VALUE._col3 (type: int), VALUE._col4 (type: int), VALUE._col5 (type: int), VALUE._col6 (type: int), VALUE._col7 (type: int), VALUE._col8 (type: int), VALUE._col9 (type: int), VALUE._col10 (type: int), VALUE._col11 (type: int), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+PREHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+POSTHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -1888628267 original
+2 1 1 100 NULL 1903063783 -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 1272503892 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 5299 5299 5299 1021033788 original
+5 2 560930 -1281818 127 1 84269672 -60 27094665 -36016110 -182 3244222 561431 new
+6 1 -1928921 695025 -151775655 -167 91 113 -164341325 -134237413 0 6229 4422 new
+PREHOOK: query: drop table part_change_various_various_int
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: drop table part_change_various_various_int
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL NULL -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 1998287.3541 1998287.3541 1998287.3541 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_bigint
+ Statistics: Num rows: 6 Data size: 2578 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: bigint), c2 (type: bigint), c3 (type: bigint), c4 (type: bigint), c5 (type: bigint), c6 (type: bigint), c7 (type: bigint), c8 (type: bigint), c9 (type: bigint), c10 (type: bigint), c11 (type: bigint), b (type: str
<TRUNCATED>
[24/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q.out
index dc2fd9a..93e90cf 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_fetchwork_part.q.out
@@ -2,641 +2,4450 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: double), _col3 (type: double), _col4 (type: double), _col5 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: double), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: char(50)), _col4 (type: char(15)), _col5 (type: varchar(50)), _col6 (type: varchar(15)), _col7 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: char(50)), VALUE._col3 (type: char(15)), VALUE._col4 (type: varchar(50)), VALUE._col5 (type: varchar(15)), VALUE._col6 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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__tab
<TRUNCATED>
[32/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q
new file mode 100644
index 0000000..2d49d7b
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q
@@ -0,0 +1,481 @@
+set hive.explain.user=true;
+set hive.mapred.mode=nonstrict;
+set hive.cli.print.header=true;
+SET hive.exec.schema.evolution=true;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
+set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
+set hive.exec.dynamic.partition.mode=nonstrict;
+set hive.metastore.disallow.incompatible.col.type.changes=false;
+set hive.default.fileformat=orc;
+
+-- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING);
+
+insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new');
+
+insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+drop table part_change_various_various_boolean;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING);
+
+insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new');
+
+insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+drop table part_change_various_various_tinyint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING);
+
+insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new');
+
+insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+drop table part_change_various_various_smallint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING);
+
+insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new');
+
+insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+drop table part_change_various_various_int;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING);
+
+insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new');
+
+insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+drop table part_change_various_various_bigint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_float replace columns (insert_num int, c1 FLOAT, c2 FLOAT, c3 FLOAT, c4 FLOAT, c5 FLOAT, c6 FLOAT, c7 FLOAT, c8 FLOAT, c9 FLOAT, c10 FLOAT, c11 FLOAT, b STRING);
+
+insert into table part_change_various_various_float partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, -3651.67212, 46114.28, 'new');
+
+insert into table part_change_various_various_float partition(part=1)
+ values (6, -1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -93222.200, 29.076, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+drop table part_change_various_various_float;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> DOUBLE
+--
+CREATE TABLE part_change_various_various_double(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_double partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, c4 DOUBLE, c5 DOUBLE, c6 DOUBLE, c7 DOUBLE, c8 DOUBLE, c9 DOUBLE, c10 DOUBLE, c11 DOUBLE, b STRING);
+
+insert into table part_change_various_various_double partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, 0.00007011717, 4.28479948, 'new');
+
+insert into table part_change_various_various_double partition(part=1)
+ values (6, -1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -66475.0000008, -284799488.1, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+drop table part_change_various_various_double;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, STRING, CHAR, VARCHAR, TIMESTAMP) --> DECIMAL
+--
+CREATE TABLE part_change_various_various_decimal(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_decimal partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '--1551801.09502', '--1551801.09502', '--1551801.09502', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '2402.3', '2402.3', '2402.3', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_decimal replace columns (insert_num int, c1 DECIMAL(38,18), c2 DECIMAL(38,18), c3 DECIMAL(38,18), c4 DECIMAL(38,18), c5 DECIMAL(38,18), c6 DECIMAL(38,18), c7 DECIMAL(38,18), c8 DECIMAL(38,18), c9 DECIMAL(38,18), c10 DECIMAL(38,18), c11 DECIMAL(38,18), b STRING);
+
+insert into table part_change_various_various_decimal partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, 0.00007011717, 4.28479948, 'new');
+
+insert into table part_change_various_various_decimal partition(part=1)
+ values (6,-1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -66475.0000008, -284799488.1, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+drop table part_change_various_various_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY) --> STRING
+--
+CREATE TABLE part_change_various_various_string(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_string partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, c5 STRING, c6 STRING, c7 STRING, c8 STRING, c9 STRING, c10 STRING, c11 STRING, c12 STRING, c13 STRING, b STRING);
+
+insert into table part_change_various_various_string partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_string partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+drop table part_change_various_various_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, VARCHAR, TIMESTAMP, DATE, BINARY) --> CHAR
+--
+CREATE TABLE part_change_various_various_char(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 VARCHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_char partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_char replace columns (insert_num int, c1 CHAR(25), c2 CHAR(25), c3 CHAR(25), c4 CHAR(25), c5 CHAR(25), c6 CHAR(25), c7 CHAR(25), c8 CHAR(25), c9 CHAR(25), c10 CHAR(25), c11 CHAR(25), c12 CHAR(25), c13 CHAR(25), b STRING);
+
+insert into table part_change_various_various_char partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_char partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+drop table part_change_various_various_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, VARCHAR, TIMESTAMP, DATE, BINARY) --> CHAR trunc
+--
+CREATE TABLE part_change_various_various_char_trunc(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 VARCHAR(8), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_char_trunc partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_char_trunc replace columns (insert_num int, c1 CHAR(8), c2 CHAR(8), c3 CHAR(8), c4 CHAR(8), c5 CHAR(8), c6 CHAR(8), c7 CHAR(8), c8 CHAR(8), c9 CHAR(8), c10 CHAR(8), c11 CHAR(8), c12 CHAR(8), c13 CHAR(8), b STRING);
+
+insert into table part_change_various_various_char_trunc partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_char_trunc partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+drop table part_change_various_various_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, TIMESTAMP, DATE, BINARY) --> VARCHAR
+--
+CREATE TABLE part_change_various_various_varchar(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_varchar partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_varchar replace columns (insert_num int, c1 VARCHAR(25), c2 VARCHAR(25), c3 VARCHAR(25), c4 VARCHAR(25), c5 VARCHAR(25), c6 VARCHAR(25), c7 VARCHAR(25), c8 VARCHAR(25), c9 VARCHAR(25), c10 VARCHAR(25), c11 VARCHAR(25), c12 VARCHAR(25), c13 VARCHAR(25), b STRING);
+
+insert into table part_change_various_various_varchar partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_varchar partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+drop table part_change_various_various_varchar;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, TIMESTAMP, DATE, BINARY) --> VARCHAR trunc
+--
+CREATE TABLE part_change_various_various_varchar_trunc(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_varchar_trunc partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_varchar_trunc replace columns (insert_num int, c1 VARCHAR(8), c2 VARCHAR(8), c3 VARCHAR(8), c4 VARCHAR(8), c5 VARCHAR(8), c6 VARCHAR(8), c7 VARCHAR(8), c8 VARCHAR(8), c9 VARCHAR(8), c10 VARCHAR(8), c11 VARCHAR(8), c12 VARCHAR(8), c13 VARCHAR(8), b STRING);
+
+insert into table part_change_various_various_varchar_trunc partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_varchar_trunc partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+drop table part_change_various_various_varchar_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, VARCHAR, DATE) --> TIMESTAMP
+--
+CREATE TABLE part_change_various_various_timestamp(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 VARCHAR(25), c12 DATE, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_timestamp partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '2007-02-09', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '0004-09-22', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '5966-07-09', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '1815-05-06', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_timestamp replace columns (insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, c6 TIMESTAMP, c7 TIMESTAMP, c8 TIMESTAMP, c9 TIMESTAMP, c10 TIMESTAMP, c11 TIMESTAMP, c12 TIMESTAMP, b STRING);
+
+insert into table part_change_various_various_timestamp partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'timestamp', 'timestamp', 'timestamp', 'date', 'new');
+
+insert into table part_change_various_various_timestamp partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', '2016-03-07 03:02:22.0', '2016-03-07 03:02:22.0', '2016-03-07 03:02:22.0', '2016-03-07', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+drop table part_change_various_various_timestamp;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (STRING, CHAR, VARCHAR, TIMESTAMP --> DATE
+--
+CREATE TABLE part_change_various_various_date(insert_num int, c1 STRING, c2 CHAR(25), c3 VARCHAR(25), c4 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_date partition(part=1)
+ values(1, '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', 'original'),
+ (2, '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', 'original'),
+ (3, '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', 'original'),
+ (4, '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', 'original');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_date replace columns (insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, b STRING);
+
+insert into table part_change_various_various_date partition(part=2)
+ values (5, '2016-03-07', '2016-03-07', '2016-03-07', '2016-03-07', 'new');
+
+insert into table part_change_various_various_date partition(part=1)
+ values (6,-'2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10','new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+drop table part_change_various_various_date;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_table.q
index f05f02a..88c7cf6 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_mapwork_table.q
@@ -1,54 +1,826 @@
+set hive.explain.user=true;
set hive.cli.print.header=true;
-set hive.support.concurrency=true;
+SET hive.exec.schema.evolution=true;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
+set hive.fetch.task.conversion=none;
SET hive.vectorized.execution.enabled=false;
set hive.fetch.task.conversion=none;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC;
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_permute_select;
-insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string);
+alter table table_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED table_add_int_permute_select;
+
+insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40);
+
+insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
+
+explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+
+-- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_permute_select order by insert_num;
+select insert_num,c from table_add_int_permute_select order by insert_num;
+
+drop table table_add_int_permute_select;
+
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1;
-select a,b,c from table1;
-select a,b,c,d from table1;
-select a,c,d from table1;
-select a,d from table1;
-select c from table1;
-select d from table1;
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,d from table_add_int_string_permute_select order by insert_num;
+
+drop table table_add_int_string_permute_select;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new');
+
+insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+drop table table_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new');
+insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+drop table table_change_date_group_string_group_timestamp;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING);
+
+insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+DESCRIBE FORMATTED table_change_date_group_string_group_date;
+
+insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+drop table table_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, - 832222222, 255, 4957,'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_string;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957,'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char;
+
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC;
+CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 832222222, -255, 4957, 'original'),
+ (4, 847492223, 0, 20435, 'original');
-insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int;
+alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING);
+
+insert into table table_change_string_group_string_group_string
+ values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING) ;
+
+insert into table table_change_string_group_string_group_string
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+drop table table_change_string_group_string_group_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_char
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_char
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+drop table table_change_string_group_string_group_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_varchar
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_varchar
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+drop table table_change_string_group_string_group_varchar;
-insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
-insert into table table2 values(5000, 'new'),(90000, 'new');
-select a,b from table2;
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (1, 45, 45, 45, 45, 45, 45, 'original'),
+ (2, -2, -2, -2, -2, -2, -2, 'original'),
+ (3, -255, -255, -255, -255, -255, -255, 'original'),
+ (4, 100, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (5, '774', '2031', '200', '12', '99', '0', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', '6', 'new'),
+ (7, '256', '32768', '31889', '300', '444', '506', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
+ (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', '18', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, -5000, 'original'),
+ (4, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (5, '774', '2031', '200', '12', '99', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', 'new'),
+ (7, '256', '32768', '31889', '300', '444', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', 'new'),
+ (9, '100', '5000', '5443', '22', '2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (1, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (5, '774', '2031', '200', '12', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', 'new'),
+ (7, '256', '32768', '31889', '300', 'new'),
+ (8, '5555', '40000', '-719017797', '45', 'new'),
+ (9, '100', '5000', '5443', '22', 'new'),
+ (10, '17', '90000', '754072151', '95', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (1, 7203778961, 7203778961, 7203778961, 'original'),
+ (2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (5, '774', '2031', '200', 'new'),
+ (6, '561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (1, -29.0764, -29.0764, 'original'),
+ (2, 753.7028, 753.7028, 'original'),
+ (3, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (5, '7.74', '22.3', 'new'),
+ (6, '56.1431', '90.9', 'new'),
+ (7, '2.56', '25.6', 'new'),
+ (8, '555.5', '55.55', 'new'),
+ (9, '10.0', '0.100', 'new'),
+ (10, '1.7', '17.8888', 'new');
+
+explain
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (1, -29.0764, 'original'),
+ (2, 753.7028, 'original'),
+ (3, -5000, 'original'),
+ (4, 52927714, 'original');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (5, '774', 'new'),
+ (6, '561431', 'new'),
+ (7, '256', 'new'),
+ (8, '5555', 'new'),
+ (9, '100', 'new'),
+ (10, '17', 'new');
+
+explain
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
-DROP TABLE table1;
-DROP TABLE table2;
\ No newline at end of file
+drop table table_change_lower_to_higher_numeric_group_float;
\ No newline at end of file
[10/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_part.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_part.q.out
index dc2fd9a..31eb543 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_part.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_fetchwork_part.q.out
@@ -2,641 +2,3994 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=99)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@part_add_int_permute_select,part_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=153)
+ Output:["_col0","_col1","_col2","_col3"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@part_add_int_string_permute_select,part_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@part_change_string_group_double,part_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@part_change_date_group_string_group_timestamp,part_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@part_change_date_group_string_group_date,part_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+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(ins
<TRUNCATED>
[11/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_table.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_table.q.out
index 2b1e5c3..4a74b8a 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_table.q.out
@@ -2,291 +2,2918 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, ACID Vectorized, MapWork, Table
+-- *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 table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__19
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__19
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__20
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__20
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 48377 -2386 original
+10 17 90000 75407 32890 new
+2 -2 -6737 56 28899 original
+3 NULL 4957 83222 90000 original
+4 0 20435 84749 -9999 original
+5 2000 72909 32442 -9322 new
+6 1 200 23233 54309 new
+7 256 32768 31889 47061 new
+8 5555 40000 -7190 81066 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__21
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__21
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__22
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__22
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__23
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__23
+POSTHOOK:
<TRUNCATED>
[31/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part.q
index da726c5..180ce21 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part.q
@@ -1,101 +1,826 @@
+set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=true;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=false;
-set hive.fetch.task.conversion=more;
+set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
+set hive.fetch.task.conversion=none;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+--
+CREATE TABLE part_add_int_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_permute_select;
-insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table part_add_int_permute_select partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned1 add columns(c int, d string);
+alter table part_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED part_add_int_permute_select;
+
+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);
-insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table part_add_int_permute_select partition(part=1)
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
+select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_permute_select order by insert_num;
+
+drop table part_add_int_permute_select;
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table part_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED part_add_int_string_permute_select;
+
+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');
+
+insert into table part_add_int_string_permute_select partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num;
+
+-- 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;
+select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,d from part_add_int_string_permute_select order by insert_num;
+
+drop table part_add_int_string_permute_select;
-insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int;
+alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
-insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+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');
-insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new');
+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');
-select part,a,b from partitioned2;
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
+drop table part_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
-insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+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');
--- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string);
+-- 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);
-insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1);
+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');
+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');
--- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+drop table part_change_date_group_string_group_timestamp;
+
+
+
+--
+-- 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);
+
+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');
+
+-- 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);
+
+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');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+drop table part_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_string;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char;
+
+
+--
+-- 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);
+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');
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+drop table part_change_string_group_string_group_string;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+drop table part_change_string_group_string_group_char;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+drop table part_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC;
+-- 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);
+
+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');
-insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned4 change column a a int;
+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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- 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) ;
+
+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);
+
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_decimal;
+
+
+--
+-- 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);
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+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);
-insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1);
+explain
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
-select part,a,b from partitioned4;
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+drop table part_change_lower_to_higher_numeric_group_float;
-DROP TABLE partitioned1;
-DROP TABLE partitioned2;
-DROP TABLE partitioned3;
-DROP TABLE partitioned4;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q
new file mode 100644
index 0000000..f8a8fa6
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_complex.q
@@ -0,0 +1,162 @@
+set hive.explain.user=true;
+set hive.mapred.mode=nonstrict;
+set hive.cli.print.header=true;
+SET hive.exec.schema.evolution=true;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
+set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
+set hive.exec.dynamic.partition.mode=nonstrict;
+set hive.metastore.disallow.incompatible.col.type.changes=false;
+set hive.default.fileformat=orc;
+
+-- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT);
+
+CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt;
+
+insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt;
+
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING);
+
+CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt;
+
+insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt;
+
+CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt;
+
+insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt;
+
+explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num;
+
+drop table part_change_various_various_struct1;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original');
+
+select insert_num,part,b from part_add_various_various_struct2 order by insert_num;
+
+-- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>);
+
+CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt;
+
+insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt;
+
+CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt;
+
+insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt;
+
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>);
+
+CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt;
+
+insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt;
+
+CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt;
+
+insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt;
+
+explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num;
+
+drop table part_add_various_various_struct2;
+
+
+
+
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT);
+
+CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt;
+
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>);
+
+CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt;
+
+CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile;
+load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt;
+
+insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt;
+
+explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num;
+
+drop table part_add_to_various_various_struct4;
[06/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
new file mode 100644
index 0000000..c47d22e
--- /dev/null
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
@@ -0,0 +1,2587 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 true 0004-09-22 18:26:29.519542222 original
+2 1 45 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 NULL NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 6229-06-28 02:54:28.970117179 original
+4 1 1 NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 time will come 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=285)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=285)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+ TableScan [TS_0] (rows=6 width=285)
+ default@part_change_various_various_boolean,part_change_various_various_boolean,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+PREHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+POSTHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL true true true true true true NULL true original
+2 1 true true true true true true true NULL true original
+3 1 NULL NULL true true true true true true true original
+4 1 true NULL true true true true true NULL true original
+5 2 true true false true true false false true false new
+6 1 true true true false true true false true true new
+PREHOOK: query: drop table part_change_various_various_boolean
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: drop table part_change_various_various_boolean
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=413)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=413)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=413)
+ default@part_change_various_various_tinyint,part_change_various_various_tinyint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+PREHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 -48 -51 -66 -29 119 119 73 73 73 -43 original
+2 1 1 -24 -63 -25 -67 34 34 NULL NULL NULL 105 original
+3 1 0 NULL -66 -38 30 85 85 1 1 1 84 original
+4 1 1 NULL 87 6 34 36 36 -77 -77 -77 60 original
+5 2 23 71 127 1 NULL -60 68 NULL NULL 40 93 new
+6 1 NULL 85 -126 NULL 91 113 -28 -63 0 8 NULL new
+PREHOOK: query: drop table part_change_various_various_tinyint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: drop table part_change_various_various_tinyint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=416)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=416)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=416)
+ default@part_change_various_various_smallint,part_change_various_various_smallint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+PREHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+POSTHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL 7373 -32578 -29 119 119 -2999 -2999 -2999 -11819 original
+2 1 1 100 25025 29415 -3651 -19422 -19422 NULL NULL NULL 29801 original
+3 1 0 72 -32578 -27686 30 -939 -939 1 1 1 -8620 original
+4 1 1 -90 14935 12294 -19422 9764 9764 5299 5299 5299 -17092 original
+5 2 -30486 15230 3117 1 -117 -7131 20227 -24858 -28771 NULL NULL new
+6 1 -10542 -1805 -4844 15507 91 22385 -28 -12268 0 NULL 774 new
+PREHOOK: query: drop table part_change_various_various_smallint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: drop table part_change_various_various_smallint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=415)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=415)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=415)
+ default@part_change_various_various_int,part_change_various_various_int,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+PREHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+POSTHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -1888628267 original
+2 1 1 100 NULL 1903063783 -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 1272503892 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 5299 5299 5299 1021033788 original
+5 2 560930 -1281818 127 1 84269672 -60 27094665 -36016110 -182 3244222 561431 new
+6 1 -1928921 695025 -151775655 -167 91 113 -164341325 -134237413 0 6229 4422 new
+PREHOOK: query: drop table part_change_various_various_int
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: drop table part_change_various_various_int
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL NULL -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 1998287.3541 1998287.3541 1998287.3541 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=6 width=429)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=6 width=429)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=429)
+ default@part_change_various_various_bigint,part_change_various_various_bigint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+PREHOOK: Input: default@part_change_various_various_bigint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+POSTHOOK: Input: default@part_change_various_various_bigint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -62018170411 original
+2 1 1 100 NULL NULL -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 134416490068 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 NULL NULL NULL 1021033788 original
+5 2 5573199346255528403 71 151775655 1 131 -60 6275638713485623898 -230 -695025 519542222 -29 new
+6 1 -164341325 9043162437544575070 -126 -6566204574741299000 91 113 -28 -63 0 3244222 -90 new
+PREHOOK: query: drop table part_change_various_various_bigint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: drop table part_change_various_various_bigint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_float
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_float
+PREHOOK: query: insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@part_change_various_various_float@part=1
+POSTHOOK: query: insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@part_change_various_various_float@part=1
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c8 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c9 EXPRESSION [
<TRUNCATED>
[30/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q
new file mode 100644
index 0000000..c7f2f57
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_part_all_primitive.q
@@ -0,0 +1,481 @@
+set hive.explain.user=true;
+set hive.mapred.mode=nonstrict;
+set hive.cli.print.header=true;
+SET hive.exec.schema.evolution=true;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
+set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
+set hive.exec.dynamic.partition.mode=nonstrict;
+set hive.metastore.disallow.incompatible.col.type.changes=false;
+set hive.default.fileformat=orc;
+
+-- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING);
+
+insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new');
+
+insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num;
+
+drop table part_change_various_various_boolean;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING);
+
+insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new');
+
+insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num;
+
+drop table part_change_various_various_tinyint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING);
+
+insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new');
+
+insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num;
+
+drop table part_change_various_various_smallint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING);
+
+insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new');
+
+insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num;
+
+drop table part_change_various_various_int;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING);
+
+insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new');
+
+insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num;
+
+drop table part_change_various_various_bigint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_float replace columns (insert_num int, c1 FLOAT, c2 FLOAT, c3 FLOAT, c4 FLOAT, c5 FLOAT, c6 FLOAT, c7 FLOAT, c8 FLOAT, c9 FLOAT, c10 FLOAT, c11 FLOAT, b STRING);
+
+insert into table part_change_various_various_float partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, -3651.67212, 46114.28, 'new');
+
+insert into table part_change_various_various_float partition(part=1)
+ values (6, -1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -93222.200, 29.076, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_float order by insert_num;
+
+drop table part_change_various_various_float;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> DOUBLE
+--
+CREATE TABLE part_change_various_various_double(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_double partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, c4 DOUBLE, c5 DOUBLE, c6 DOUBLE, c7 DOUBLE, c8 DOUBLE, c9 DOUBLE, c10 DOUBLE, c11 DOUBLE, b STRING);
+
+insert into table part_change_various_various_double partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, 0.00007011717, 4.28479948, 'new');
+
+insert into table part_change_various_various_double partition(part=1)
+ values (6, -1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -66475.0000008, -284799488.1, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_double order by insert_num;
+
+drop table part_change_various_various_double;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, STRING, CHAR, VARCHAR, TIMESTAMP) --> DECIMAL
+--
+CREATE TABLE part_change_various_various_decimal(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_decimal partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '--1551801.09502', '--1551801.09502', '--1551801.09502', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '2402.3', '2402.3', '2402.3', '2002-05-10 05:29:48.990818073', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_decimal replace columns (insert_num int, c1 DECIMAL(38,18), c2 DECIMAL(38,18), c3 DECIMAL(38,18), c4 DECIMAL(38,18), c5 DECIMAL(38,18), c6 DECIMAL(38,18), c7 DECIMAL(38,18), c8 DECIMAL(38,18), c9 DECIMAL(38,18), c10 DECIMAL(38,18), c11 DECIMAL(38,18), b STRING);
+
+insert into table part_change_various_various_decimal partition(part=2)
+ values (5, 953967041., 62.0791539559013466, 718.78, 1, 203.199548118, -60, 6275638713485623898, -230, -695025, 0.00007011717, 4.28479948, 'new');
+
+insert into table part_change_various_various_decimal partition(part=1)
+ values (6,-1255178165.77663, 9043162437544575070.974, -4314.7918, -1240033819, 91, 1698.95, -100.3597812, -63, 0, -66475.0000008, -284799488.1, 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_decimal order by insert_num;
+
+drop table part_change_various_various_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY) --> STRING
+--
+CREATE TABLE part_change_various_various_string(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_string partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, c5 STRING, c6 STRING, c7 STRING, c8 STRING, c9 STRING, c10 STRING, c11 STRING, c12 STRING, c13 STRING, b STRING);
+
+insert into table part_change_various_various_string partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_string partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_string order by insert_num;
+
+drop table part_change_various_various_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, VARCHAR, TIMESTAMP, DATE, BINARY) --> CHAR
+--
+CREATE TABLE part_change_various_various_char(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 VARCHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_char partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_char replace columns (insert_num int, c1 CHAR(25), c2 CHAR(25), c3 CHAR(25), c4 CHAR(25), c5 CHAR(25), c6 CHAR(25), c7 CHAR(25), c8 CHAR(25), c9 CHAR(25), c10 CHAR(25), c11 CHAR(25), c12 CHAR(25), c13 CHAR(25), b STRING);
+
+insert into table part_change_various_various_char partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_char partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char order by insert_num;
+
+drop table part_change_various_various_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, VARCHAR, TIMESTAMP, DATE, BINARY) --> CHAR trunc
+--
+CREATE TABLE part_change_various_various_char_trunc(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 VARCHAR(8), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_char_trunc partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_char_trunc replace columns (insert_num int, c1 CHAR(8), c2 CHAR(8), c3 CHAR(8), c4 CHAR(8), c5 CHAR(8), c6 CHAR(8), c7 CHAR(8), c8 CHAR(8), c9 CHAR(8), c10 CHAR(8), c11 CHAR(8), c12 CHAR(8), c13 CHAR(8), b STRING);
+
+insert into table part_change_various_various_char_trunc partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_char_trunc partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_char_trunc order by insert_num;
+
+drop table part_change_various_various_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, TIMESTAMP, DATE, BINARY) --> VARCHAR
+--
+CREATE TABLE part_change_various_various_varchar(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_varchar partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_varchar replace columns (insert_num int, c1 VARCHAR(25), c2 VARCHAR(25), c3 VARCHAR(25), c4 VARCHAR(25), c5 VARCHAR(25), c6 VARCHAR(25), c7 VARCHAR(25), c8 VARCHAR(25), c9 VARCHAR(25), c10 VARCHAR(25), c11 VARCHAR(25), c12 VARCHAR(25), c13 VARCHAR(25), b STRING);
+
+insert into table part_change_various_various_varchar partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_varchar partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar order by insert_num;
+
+drop table part_change_various_various_varchar;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, TIMESTAMP, DATE, BINARY) --> VARCHAR trunc
+--
+CREATE TABLE part_change_various_various_varchar_trunc(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 TIMESTAMP, c12 DATE, c13 BINARY, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_varchar_trunc partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, 'dynamic reptile ', 'dynamic reptile ', '0004-09-22 18:26:29.519542222', '2007-02-09', 'binary', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, ' baffling ', ' baffling ', '2007-02-09 05:17:29.368756876', '0004-09-22', 'binary', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '1', '1', '6229-06-28 02:54:28.970117179', '5966-07-09', 'binary', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, 'junkyard', 'junkyard', '2002-05-10 05:29:48.990818073', '1815-05-06', 'binary', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_varchar_trunc replace columns (insert_num int, c1 VARCHAR(8), c2 VARCHAR(8), c3 VARCHAR(8), c4 VARCHAR(8), c5 VARCHAR(8), c6 VARCHAR(8), c7 VARCHAR(8), c8 VARCHAR(8), c9 VARCHAR(8), c10 VARCHAR(8), c11 VARCHAR(8), c12 VARCHAR(8), c13 VARCHAR(8), b STRING);
+
+insert into table part_change_various_various_varchar_trunc partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'verdict', 'verdict', 'timestamp', 'date', 'binary', 'new');
+
+insert into table part_change_various_various_varchar_trunc partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', 'trial', 'trial', '2016-03-07 03:02:22.0', '2016-03-07', 'binary', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,b from part_change_various_various_varchar_trunc order by insert_num;
+
+drop table part_change_various_various_varchar_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), STRING, CHAR, VARCHAR, DATE) --> TIMESTAMP
+--
+CREATE TABLE part_change_various_various_timestamp(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 FLOAT, c7 DOUBLE, c8 DECIMAL(38,18), c9 STRING, c10 CHAR(25), c11 VARCHAR(25), c12 DATE, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_timestamp partition(part=1)
+ values(1, true, 200, 72909, 3244222, -99999999999, -29.0764, 470614135, 470614135, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '2007-02-09', 'original'),
+ (2, 0, 100, 483777, 14, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '0004-09-22', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, - 66475.561431, -66475.561431, 0.561431, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '5966-07-09', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488, 9250340.75, 9250340.75, 9250340.75, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '1815-05-06', 'original');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_timestamp replace columns (insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, c6 TIMESTAMP, c7 TIMESTAMP, c8 TIMESTAMP, c9 TIMESTAMP, c10 TIMESTAMP, c11 TIMESTAMP, c12 TIMESTAMP, b STRING);
+
+insert into table part_change_various_various_timestamp partition(part=2)
+ values (5, 'true', '400', '44388', -'100', '953967041.', '62.079153', '718.78', '1', 'timestamp', 'timestamp', 'timestamp', 'date', 'new');
+
+insert into table part_change_various_various_timestamp partition(part=1)
+ values (6,-'false', '-67', '833', '63993', ' 1255178165.77663', '905070.974', '-4314.7918', -'1240033819', '2016-03-07 03:02:22.0', '2016-03-07 03:02:22.0', '2016-03-07 03:02:22.0', '2016-03-07', 'new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,b from part_change_various_various_timestamp order by insert_num;
+
+drop table part_change_various_various_timestamp;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (STRING, CHAR, VARCHAR, TIMESTAMP --> DATE
+--
+CREATE TABLE part_change_various_various_date(insert_num int, c1 STRING, c2 CHAR(25), c3 VARCHAR(25), c4 TIMESTAMP, b STRING) PARTITIONED BY(part INT);
+
+insert into table part_change_various_various_date partition(part=1)
+ values(1, '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', 'original'),
+ (2, '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', 'original'),
+ (3, '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', 'original'),
+ (4, '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', 'original');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_date replace columns (insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, b STRING);
+
+insert into table part_change_various_various_date partition(part=2)
+ values (5, '2016-03-07', '2016-03-07', '2016-03-07', '2016-03-07', 'new');
+
+insert into table part_change_various_various_date partition(part=1)
+ values (6,-'2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10','new');
+
+explain
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_various_various_date order by insert_num;
+
+drop table part_change_various_various_date;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_table.q
index 393967f..98b70f9 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_vec_mapwork_table.q
@@ -1,57 +1,824 @@
+set hive.explain.user=true;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=true;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC;
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_permute_select;
-insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string);
+alter table table_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED table_add_int_permute_select;
+
+insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40);
-insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1;
-select a,b,c from table1;
-select a,b,c,d from table1;
-select a,c,d from table1;
-select a,d from table1;
-select c from table1;
-select d from table1;
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_permute_select order by insert_num;
+select insert_num,c from table_add_int_permute_select order by insert_num;
+
+drop table table_add_int_permute_select;
+
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
+
+insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+
+-- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,d from table_add_int_string_permute_select order by insert_num;
+
+drop table table_add_int_string_permute_select;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new');
+
+insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+drop table table_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new');
+insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+drop table table_change_date_group_string_group_timestamp;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING);
+
+insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);DESCRIBE FORMATTED table_change_date_group_string_group_date;
+
+insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+drop table table_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_string;
+
+
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC;
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
-insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int;
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
-insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, - 832222222, 255, 4957,'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_string;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957,'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 832222222, -255, 4957, 'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING);
+
+insert into table table_change_string_group_string_group_string
+ values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING) ;
+
+insert into table table_change_string_group_string_group_string
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+drop table table_change_string_group_string_group_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_char
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_char
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+drop table table_change_string_group_string_group_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_varchar
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_varchar
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+drop table table_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (1, 45, 45, 45, 45, 45, 45, 'original'),
+ (2, -2, -2, -2, -2, -2, -2, 'original'),
+ (3, -255, -255, -255, -255, -255, -255, 'original'),
+ (4, 100, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (5, '774', '2031', '200', '12', '99', '0', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', '6', 'new'),
+ (7, '256', '32768', '31889', '300', '444', '506', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
+ (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', '18', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, -5000, 'original'),
+ (4, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (5, '774', '2031', '200', '12', '99', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', 'new'),
+ (7, '256', '32768', '31889', '300', '444', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', 'new'),
+ (9, '100', '5000', '5443', '22', '2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (1, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (5, '774', '2031', '200', '12', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', 'new'),
+ (7, '256', '32768', '31889', '300', 'new'),
+ (8, '5555', '40000', '-719017797', '45', 'new'),
+ (9, '100', '5000', '5443', '22', 'new'),
+ (10, '17', '90000', '754072151', '95', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (1, 7203778961, 7203778961, 7203778961, 'original'),
+ (2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (5, '774', '2031', '200', 'new'),
+ (6, '561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (1, -29.0764, -29.0764, 'original'),
+ (2, 753.7028, 753.7028, 'original'),
+ (3, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (5, '7.74', '22.3', 'new'),
+ (6, '56.1431', '90.9', 'new'),
+ (7, '2.56', '25.6', 'new'),
+ (8, '555.5', '55.55', 'new'),
+ (9, '10.0', '0.100', 'new'),
+ (10, '1.7', '17.8888', 'new');
+
+explain
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (1, -29.0764, 'original'),
+ (2, 753.7028, 'original'),
+ (3, -5000, 'original'),
+ (4, 52927714, 'original');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
-insert into table table2 values(5000, 'new'),(90000, 'new');
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (5, '774', 'new'),
+ (6, '561431', 'new'),
+ (7, '256', 'new'),
+ (8, '5555', 'new'),
+ (9, '100', 'new'),
+ (10, '17', 'new');
-select a,b from table2;
+explain
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
-DROP TABLE table1;
-DROP TABLE table2;
\ No newline at end of file
+drop table table_change_lower_to_higher_numeric_group_float;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part.q
index d3c9c8a..978e76d 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part.q
@@ -2,8 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_complex.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_complex.q b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_complex.q
index f4614ff..c1e8af6 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_complex.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_complex.q
@@ -2,8 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_primitive.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_primitive.q b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_primitive.q
index 3b8d8e4..7ea38ea 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_primitive.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_part_all_primitive.q
@@ -2,8 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_table.q
index 1b408dd..9fa020a 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_nonvec_mapwork_table.q
@@ -1,8 +1,11 @@
set hive.explain.user=true;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part.q
index 5d30b91..c21bf8f 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=true;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_complex.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_complex.q b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_complex.q
index d188bfd..a914544 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_complex.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_complex.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=true;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_primitive.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_primitive.q b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_primitive.q
index 952517f..fd0b634 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_primitive.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_part_all_primitive.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=true;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
[39/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/io/orc/SchemaEvolution.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/SchemaEvolution.java b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/SchemaEvolution.java
index 6747691..046665b 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/SchemaEvolution.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/SchemaEvolution.java
@@ -100,9 +100,11 @@ public class SchemaEvolution {
break;
case CHAR:
case VARCHAR:
+ // HIVE-13648: Look at ORC data type conversion edge cases (CHAR, VARCHAR, DECIMAL)
isOk = fileType.getMaxLength() == readerType.getMaxLength();
break;
case DECIMAL:
+ // HIVE-13648: Look at ORC data type conversion edge cases (CHAR, VARCHAR, DECIMAL)
// TODO we don't enforce scale and precision checks, but probably should
break;
case UNION:
@@ -134,27 +136,20 @@ public class SchemaEvolution {
throw new IllegalArgumentException("Unknown type " + readerType);
}
} else {
- switch (fileType.getCategory()) {
- case SHORT:
- if (readerType.getCategory() != TypeDescription.Category.INT &&
- readerType.getCategory() != TypeDescription.Category.LONG) {
- isOk = false;
- }
- break;
- case INT:
- if (readerType.getCategory() != TypeDescription.Category.LONG) {
- isOk = false;
- }
- break;
- default:
- isOk = false;
- }
+ /*
+ * Check for the few cases where will not convert....
+ */
+
+ isOk = ConvertTreeReaderFactory.canConvert(fileType, readerType);
}
if (isOk) {
readerToFile.put(readerType, fileType);
} else {
- throw new IOException("ORC does not support type conversion from " +
- fileType + " to " + readerType);
+ throw new IOException(
+ String.format(
+ "ORC does not support type conversion from file type %s (%d) to reader type %s (%d)",
+ fileType.toString(), fileType.getId(),
+ readerType.toString(), readerType.getId()));
}
}
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/io/orc/TreeReaderFactory.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/TreeReaderFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/TreeReaderFactory.java
index 8ee8cd7..6d1c256 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/TreeReaderFactory.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/TreeReaderFactory.java
@@ -171,6 +171,12 @@ public class TreeReaderFactory {
abstract void skipRows(long rows) throws IOException;
+ void readValuePresent() throws IOException {
+ if (present != null) {
+ valuePresent = present.next() == 1;
+ }
+ }
+
Object next(Object previous) throws IOException {
if (present != null) {
valuePresent = present.next() == 1;
@@ -204,7 +210,7 @@ public class TreeReaderFactory {
*/
public void nextVector(ColumnVector previous,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
if (present != null || isNull != null) {
// Set noNulls and isNull vector of the ColumnVector based on
// present stream
@@ -273,7 +279,7 @@ public class TreeReaderFactory {
}
@Override
- public void nextVector(ColumnVector vector, boolean[] isNull, int size) {
+ public void nextVector(ColumnVector vector, boolean[] isNull, final int batchSize) {
vector.noNulls = false;
vector.isNull[0] = true;
vector.isRepeating = true;
@@ -337,7 +343,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -398,7 +404,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -480,7 +486,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -562,7 +568,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -645,7 +651,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -714,7 +720,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final DoubleColumnVector result = (DoubleColumnVector) previousVector;
// Read present/isNull stream
@@ -823,7 +829,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final DoubleColumnVector result = (DoubleColumnVector) previousVector;
// Read present/isNull stream
@@ -960,7 +966,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final BytesColumnVector result = (BytesColumnVector) previousVector;
// Read present/isNull stream
@@ -1125,7 +1131,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
TimestampColumnVector result = (TimestampColumnVector) previousVector;
super.nextVector(previousVector, isNull, batchSize);
@@ -1248,7 +1254,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final LongColumnVector result = (LongColumnVector) previousVector;
// Read present/isNull stream
@@ -1343,7 +1349,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final DecimalColumnVector result = (DecimalColumnVector) previousVector;
// Read present/isNull stream
@@ -1460,7 +1466,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
reader.nextVector(previousVector, isNull, batchSize);
}
@@ -1515,7 +1521,7 @@ public class TreeReaderFactory {
IntegerReader lengths,
LongColumnVector scratchlcv,
BytesColumnVector result,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
if (result.noNulls || !(result.isRepeating && result.isNull[0])) {
byte[] allBytes = commonReadByteArrays(stream, lengths, scratchlcv,
result, (int) batchSize);
@@ -1626,7 +1632,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final BytesColumnVector result = (BytesColumnVector) previousVector;
// Read present/isNull stream
@@ -1798,7 +1804,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
final BytesColumnVector result = (BytesColumnVector) previousVector;
int offset;
int length;
@@ -1915,7 +1921,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
// Get the vector of strings from StringTreeReader, then make a 2nd pass to
// adjust down the length (right trim and truncate) if necessary.
super.nextVector(previousVector, isNull, batchSize);
@@ -1990,7 +1996,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
// Get the vector of strings from StringTreeReader, then make a 2nd pass to
// adjust down the length (truncate) if necessary.
super.nextVector(previousVector, isNull, batchSize);
@@ -2034,18 +2040,18 @@ public class TreeReaderFactory {
protected StructTreeReader(int columnId,
TypeDescription readerSchema,
- SchemaEvolution treeReaderSchema,
+ SchemaEvolution evolution,
boolean[] included,
boolean skipCorrupt) throws IOException {
super(columnId);
- TypeDescription fileSchema = treeReaderSchema.getFileType(readerSchema);
+ TypeDescription fileSchema = evolution.getFileType(readerSchema);
List<TypeDescription> childrenTypes = readerSchema.getChildren();
this.fields = new TreeReader[childrenTypes.size()];
for (int i = 0; i < fields.length; ++i) {
TypeDescription subtype = childrenTypes.get(i);
- this.fields[i] = createTreeReader(subtype, treeReaderSchema, included, skipCorrupt);
+ this.fields[i] = createTreeReader(subtype, evolution, included, skipCorrupt);
}
}
@@ -2097,7 +2103,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
super.nextVector(previousVector, isNull, batchSize);
StructColumnVector result = (StructColumnVector) previousVector;
if (result.noNulls || !(result.isRepeating && result.isNull[0])) {
@@ -2142,7 +2148,7 @@ public class TreeReaderFactory {
protected UnionTreeReader(int fileColumn,
TypeDescription readerSchema,
- SchemaEvolution treeReaderSchema,
+ SchemaEvolution evolution,
boolean[] included,
boolean skipCorrupt) throws IOException {
super(fileColumn);
@@ -2151,7 +2157,7 @@ public class TreeReaderFactory {
this.fields = new TreeReader[fieldCount];
for (int i = 0; i < fieldCount; ++i) {
TypeDescription subtype = childrenTypes.get(i);
- this.fields[i] = createTreeReader(subtype, treeReaderSchema, included, skipCorrupt);
+ this.fields[i] = createTreeReader(subtype, evolution, included, skipCorrupt);
}
}
@@ -2185,7 +2191,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previousVector,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
UnionColumnVector result = (UnionColumnVector) previousVector;
super.nextVector(result, isNull, batchSize);
if (result.noNulls || !(result.isRepeating && result.isNull[0])) {
@@ -2237,12 +2243,12 @@ public class TreeReaderFactory {
protected ListTreeReader(int fileColumn,
TypeDescription readerSchema,
- SchemaEvolution treeReaderSchema,
+ SchemaEvolution evolution,
boolean[] included,
boolean skipCorrupt) throws IOException {
super(fileColumn);
TypeDescription elementType = readerSchema.getChildren().get(0);
- elementReader = createTreeReader(elementType, treeReaderSchema, included,
+ elementReader = createTreeReader(elementType, evolution, included,
skipCorrupt);
}
@@ -2286,7 +2292,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previous,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
ListColumnVector result = (ListColumnVector) previous;
super.nextVector(result, isNull, batchSize);
// if we have some none-null values, then read them
@@ -2347,14 +2353,14 @@ public class TreeReaderFactory {
protected MapTreeReader(int fileColumn,
TypeDescription readerSchema,
- SchemaEvolution treeReaderSchema,
+ SchemaEvolution evolution,
boolean[] included,
boolean skipCorrupt) throws IOException {
super(fileColumn);
TypeDescription keyType = readerSchema.getChildren().get(0);
TypeDescription valueType = readerSchema.getChildren().get(1);
- keyReader = createTreeReader(keyType, treeReaderSchema, included, skipCorrupt);
- valueReader = createTreeReader(valueType, treeReaderSchema, included, skipCorrupt);
+ keyReader = createTreeReader(keyType, evolution, included, skipCorrupt);
+ valueReader = createTreeReader(valueType, evolution, included, skipCorrupt);
}
@Override
@@ -2390,7 +2396,7 @@ public class TreeReaderFactory {
@Override
public void nextVector(ColumnVector previous,
boolean[] isNull,
- int batchSize) throws IOException {
+ final int batchSize) throws IOException {
MapColumnVector result = (MapColumnVector) previous;
super.nextVector(result, isNull, batchSize);
if (result.noNulls || !(result.isRepeating && result.isNull[0])) {
@@ -2459,7 +2465,17 @@ public class TreeReaderFactory {
(included != null && !included[readerType.getId()])) {
return new NullTreeReader(0);
}
- switch (readerType.getCategory()) {
+ TypeDescription.Category readerTypeCategory = readerType.getCategory();
+ if (!fileType.getCategory().equals(readerTypeCategory) &&
+ (readerTypeCategory != TypeDescription.Category.STRUCT &&
+ readerTypeCategory != TypeDescription.Category.MAP &&
+ readerTypeCategory != TypeDescription.Category.LIST &&
+ readerTypeCategory != TypeDescription.Category.UNION)) {
+ // We only convert complex children.
+ return ConvertTreeReaderFactory.createConvertTreeReader(readerType, evolution,
+ included, skipCorrupt);
+ }
+ switch (readerTypeCategory) {
case BOOLEAN:
return new BooleanTreeReader(fileType.getId());
case BYTE:
@@ -2503,7 +2519,7 @@ public class TreeReaderFactory {
evolution, included, skipCorrupt);
default:
throw new IllegalArgumentException("Unsupported type " +
- readerType.getCategory());
+ readerTypeCategory);
}
}
}
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_replace_columns2.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_replace_columns2.q b/ql/src/test/queries/clientnegative/orc_replace_columns2.q
index 2a50b94..9bf9c87 100644
--- a/ql/src/test/queries/clientnegative/orc_replace_columns2.q
+++ b/ql/src/test/queries/clientnegative/orc_replace_columns2.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=true;
+
+-- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key tinyint, val string) stored as orc;
-alter table src_orc replace columns (k smallint, val string);
+alter table src_orc replace columns (k smallint, val int);
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_replace_columns2_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_replace_columns2_acid.q b/ql/src/test/queries/clientnegative/orc_replace_columns2_acid.q
index b1614e6..7b37757 100644
--- a/ql/src/test/queries/clientnegative/orc_replace_columns2_acid.q
+++ b/ql/src/test/queries/clientnegative/orc_replace_columns2_acid.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=false;
+
+-- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
-alter table src_orc replace columns (k smallint, val string);
+alter table src_orc replace columns (k smallint, val int);
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_replace_columns3.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_replace_columns3.q b/ql/src/test/queries/clientnegative/orc_replace_columns3.q
index b7b527f..c2564fb 100644
--- a/ql/src/test/queries/clientnegative/orc_replace_columns3.q
+++ b/ql/src/test/queries/clientnegative/orc_replace_columns3.q
@@ -1,4 +1,7 @@
SET hive.exec.schema.evolution=true;
+
+-- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key smallint, val string) stored as orc;
alter table src_orc replace columns (k int, val string, z smallint);
alter table src_orc replace columns (k int, val string, z tinyint);
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_replace_columns3_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_replace_columns3_acid.q b/ql/src/test/queries/clientnegative/orc_replace_columns3_acid.q
index 89c04e6..e3cb819 100644
--- a/ql/src/test/queries/clientnegative/orc_replace_columns3_acid.q
+++ b/ql/src/test/queries/clientnegative/orc_replace_columns3_acid.q
@@ -1,4 +1,7 @@
SET hive.exec.schema.evolution=false;
+
+-- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
alter table src_orc replace columns (k int, val string, z smallint);
alter table src_orc replace columns (k int, val string, z tinyint);
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion1.q b/ql/src/test/queries/clientnegative/orc_type_promotion1.q
index d7facc3..07a93d1 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion1.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion1.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=true;
-create table src_orc (key tinyint, val string) stored as orc;
-alter table src_orc change key key float;
+
+-- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) stored as orc;
+alter table src_orc change key key int;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion1_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion1_acid.q b/ql/src/test/queries/clientnegative/orc_type_promotion1_acid.q
index b845bd6..3a8c08a 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion1_acid.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion1_acid.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=false;
-create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
-alter table src_orc change key key float;
+
+-- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
+alter table src_orc change key key int;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion2.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion2.q b/ql/src/test/queries/clientnegative/orc_type_promotion2.q
index c4ee1b5..ddc3423 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion2.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion2.q
@@ -1,4 +1,7 @@
SET hive.exec.schema.evolution=true;
+
+-- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key smallint, val string) stored as orc;
desc src_orc;
alter table src_orc change key key smallint;
@@ -7,4 +10,4 @@ alter table src_orc change key key int;
desc src_orc;
alter table src_orc change key key bigint;
desc src_orc;
-alter table src_orc change val val char(100);
+alter table src_orc change val val int;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion2_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion2_acid.q b/ql/src/test/queries/clientnegative/orc_type_promotion2_acid.q
index 5228cf8..1d24b1d 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion2_acid.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion2_acid.q
@@ -1,4 +1,7 @@
SET hive.exec.schema.evolution=false;
+
+-- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
desc src_orc;
alter table src_orc change key key smallint;
@@ -7,4 +10,4 @@ alter table src_orc change key key int;
desc src_orc;
alter table src_orc change key key bigint;
desc src_orc;
-alter table src_orc change val val char(100);
+alter table src_orc change val val int;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion3.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion3.q b/ql/src/test/queries/clientnegative/orc_type_promotion3.q
index 3ee99ec..52b0ec7 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion3.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion3.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=true;
-create table src_orc (key tinyint, val string) stored as orc;
+
+-- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) stored as orc;
alter table src_orc change key key smallint;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientnegative/orc_type_promotion3_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/orc_type_promotion3_acid.q b/ql/src/test/queries/clientnegative/orc_type_promotion3_acid.q
index 79e5c84..83764e2 100644
--- a/ql/src/test/queries/clientnegative/orc_type_promotion3_acid.q
+++ b/ql/src/test/queries/clientnegative/orc_type_promotion3_acid.q
@@ -1,3 +1,6 @@
SET hive.exec.schema.evolution=false;
-create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
+
+-- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true');
alter table src_orc change key key smallint;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/orc_int_type_promotion.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/orc_int_type_promotion.q b/ql/src/test/queries/clientpositive/orc_int_type_promotion.q
index a5a2308..9be46f0 100644
--- a/ql/src/test/queries/clientpositive/orc_int_type_promotion.q
+++ b/ql/src/test/queries/clientpositive/orc_int_type_promotion.q
@@ -46,6 +46,8 @@ insert overwrite table alltypes_orc select * from alltypes;
select * from alltypes_orc;
+SET hive.exec.schema.evolution=true;
+
alter table alltypes_orc change si si int;
select * from alltypes_orc;
@@ -59,6 +61,8 @@ set hive.fetch.task.conversion=none;
explain select ti, si, i, bi from alltypes_orc;
select ti, si, i, bi from alltypes_orc;
+SET hive.exec.schema.evolution=false;
+
set hive.exec.dynamic.partition.mode=nonstrict;
create table src_part_orc (key int, value string) partitioned by (ds string) stored as orc;
insert overwrite table src_part_orc partition(ds) select key, value, ds from srcpart where ds is not null;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/orc_schema_evolution.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/orc_schema_evolution.q b/ql/src/test/queries/clientpositive/orc_schema_evolution.q
index 285acf4..c78cfe8 100644
--- a/ql/src/test/queries/clientpositive/orc_schema_evolution.q
+++ b/ql/src/test/queries/clientpositive/orc_schema_evolution.q
@@ -1,4 +1,6 @@
set hive.fetch.task.conversion=none;
+SET hive.exec.schema.evolution=true;
+
create table src_orc (key smallint, val string) stored as orc;
create table src_orc2 (key smallint, val string) stored as orc;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_part.q
index 800c5f8..768d77d 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_part.q
@@ -2,172 +2,858 @@ set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
set hive.support.concurrency=true;
set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
SET hive.exec.schema.evolution=false;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- 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');
-insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table part_add_int_permute_select partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned1 add columns(c int, d string);
+alter table part_add_int_permute_select add columns(c int);
-insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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);
-insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table part_add_int_permute_select partition(part=1)
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
+select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_permute_select order by insert_num;
+
+drop table part_add_int_permute_select;
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
+
+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');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table part_add_int_string_permute_select add columns(c int, d string);
+
+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');
+
+insert into table part_add_int_string_permute_select partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+-- 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;
+select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,d from part_add_int_string_permute_select order by insert_num;
+
+drop table part_add_int_string_permute_select;
-insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int;
+alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+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');
-insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+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');
-insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new');
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
-select part,a,b from partitioned2;
+drop table part_change_string_group_double;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- 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');
-insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+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');
--- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string);
+-- 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);
-insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1);
+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');
+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');
--- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+drop table part_change_date_group_string_group_timestamp;
+
+
+
+--
+-- 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');
+
+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');
+
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+drop table part_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_string;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+drop table part_change_string_group_string_group_string;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+drop table part_change_string_group_string_group_char;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+drop table part_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned4 change column a a int;
+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) ;
+
+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);
-insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1);
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-select part,a,b from partitioned4;
+drop table part_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- 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);
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_decimal;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+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);
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_float;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
-CREATE TABLE partitioned5(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned5 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_update_1 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned5 add columns(c int, d string);
+alter table partitioned_update_1 add columns(c int, d string);
-insert into table partitioned5 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned5 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_update_1 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned5;
+select insert_num,part,a,b,c,d from partitioned_update_1;
-- UPDATE New Columns
-update partitioned5 set c=99;
+update partitioned_update_1 set c=99;
-select part,a,b,c,d from partitioned5;
+select insert_num,part,a,b,c,d from partitioned_update_1;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
-CREATE TABLE partitioned6(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned6 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_delete_1 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned6 add columns(c int, d string);
+alter table partitioned_delete_1 add columns(c int, d string);
-insert into table partitioned6 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned6 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_delete_1 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned6;
+select part,a,b,c,d from partitioned_delete_1;
-- DELETE where old column
-delete from partitioned6 where a = 2 or a = 4 or a = 6;
+delete from partitioned_delete_1 where a = 2 or a = 4 or a = 6;
-select part,a,b,c,d from partitioned6;
+
+select insert_num,part,a,b,c,d from partitioned_delete_1;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
-CREATE TABLE partitioned7(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned7 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_delete_2 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned7 add columns(c int, d string);
+alter table partitioned_delete_2 add columns(c int, d string);
-insert into table partitioned7 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned7 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_delete_2 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned7;
+select insert_num,part,a,b,c,d from partitioned_delete_2;
-- DELETE where new column
-delete from partitioned7 where a = 1 or c = 30 or c == 100;
-
-select part,a,b,c,d from partitioned7;
+delete from partitioned_delete_2 where a = 1 or c = 30 or c == 100;
+select insert_num,part,a,b,c,d from partitioned_delete_2;
-DROP TABLE partitioned1;
-DROP TABLE partitioned2;
-DROP TABLE partitioned3;
-DROP TABLE partitioned4;
-DROP TABLE partitioned5;
-DROP TABLE partitioned6;
-DROP TABLE partitioned7;
\ No newline at end of file
+DROP TABLE partitioned_update_1;
+DROP TABLE partitioned_delete_1;
+DROP TABLE partitioned_delete_2;
\ No newline at end of file
[34/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q
index 5bdd620..0328d0a 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_nonvec_fetchwork_table.q
@@ -1,56 +1,824 @@
+set hive.explain.user=true;
set hive.cli.print.header=true;
-set hive.support.concurrency=true;
-set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=more;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC;
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_permute_select;
-insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string);
+alter table table_add_int_permute_select add columns(c int);
+DESCRIBE FORMATTED table_add_int_permute_select;
+
+insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40);
-insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
-- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1;
-select a,b,c from table1;
-select a,b,c,d from table1;
-select a,c,d from table1;
-select a,d from table1;
-select c from table1;
-select d from table1;
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_permute_select order by insert_num;
+select insert_num,c from table_add_int_permute_select order by insert_num;
+
+drop table table_add_int_permute_select;
+
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string);
+DESCRIBE FORMATTED table_add_int_string_permute_select;
+
+insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
+
+insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+
+-- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,d from table_add_int_string_permute_select order by insert_num;
+
+drop table table_add_int_string_permute_select;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new');
+
+insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+drop table table_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new');
+insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+drop table table_change_date_group_string_group_timestamp;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING);
+
+insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);DESCRIBE FORMATTED table_change_date_group_string_group_date;
+
+insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+drop table table_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_string;
+
+
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC;
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
-insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int;
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
-insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING);
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, - 832222222, 255, 4957,'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_string;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957,'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 832222222, -255, 4957, 'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING);
+
+insert into table table_change_string_group_string_group_string
+ values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING) ;
+
+insert into table table_change_string_group_string_group_string
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+drop table table_change_string_group_string_group_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_char
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_char
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+drop table table_change_string_group_string_group_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING);
+
+insert into table table_change_string_group_string_group_varchar
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_varchar
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+drop table table_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (1, 45, 45, 45, 45, 45, 45, 'original'),
+ (2, -2, -2, -2, -2, -2, -2, 'original'),
+ (3, -255, -255, -255, -255, -255, -255, 'original'),
+ (4, 100, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (5, '774', '2031', '200', '12', '99', '0', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', '6', 'new'),
+ (7, '256', '32768', '31889', '300', '444', '506', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
+ (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', '18', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, -5000, 'original'),
+ (4, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (5, '774', '2031', '200', '12', '99', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', 'new'),
+ (7, '256', '32768', '31889', '300', '444', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', 'new'),
+ (9, '100', '5000', '5443', '22', '2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (1, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (5, '774', '2031', '200', '12', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', 'new'),
+ (7, '256', '32768', '31889', '300', 'new'),
+ (8, '5555', '40000', '-719017797', '45', 'new'),
+ (9, '100', '5000', '5443', '22', 'new'),
+ (10, '17', '90000', '754072151', '95', 'new');
+
+explain
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (1, 7203778961, 7203778961, 7203778961, 'original'),
+ (2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (5, '774', '2031', '200', 'new'),
+ (6, '561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+explain
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (1, -29.0764, -29.0764, 'original'),
+ (2, 753.7028, 753.7028, 'original'),
+ (3, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (5, '7.74', '22.3', 'new'),
+ (6, '56.1431', '90.9', 'new'),
+ (7, '2.56', '25.6', 'new'),
+ (8, '555.5', '55.55', 'new'),
+ (9, '10.0', '0.100', 'new'),
+ (10, '1.7', '17.8888', 'new');
+
+explain
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (1, -29.0764, 'original'),
+ (2, 753.7028, 'original'),
+ (3, -5000, 'original'),
+ (4, 52927714, 'original');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
-insert into table table2 values(5000, 'new'),(90000, 'new');
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (5, '774', 'new'),
+ (6, '561431', 'new'),
+ (7, '256', 'new'),
+ (8, '5555', 'new'),
+ (9, '100', 'new'),
+ (10, '17', 'new');
-select a,b from table2;
+explain
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
-DROP TABLE table1;
-DROP TABLE table2;
+drop table table_change_lower_to_higher_numeric_group_float;
\ No newline at end of file
[20/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
new file mode 100644
index 0000000..b0874ad
--- /dev/null
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_primitive.q.out
@@ -0,0 +1,2872 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 true 0004-09-22 18:26:29.519542222 original
+2 1 45 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 NULL NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 6229-06-28 02:54:28.970117179 original
+4 1 1 NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 time will come 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_boolean
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: boolean), c2 (type: boolean), c3 (type: boolean), c4 (type: boolean), c5 (type: boolean), c6 (type: boolean), c7 (type: boolean), c8 (type: boolean), c9 (type: boolean), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: boolean), _col3 (type: boolean), _col4 (type: boolean), _col5 (type: boolean), _col6 (type: boolean), _col7 (type: boolean), _col8 (type: boolean), _col9 (type: boolean), _col10 (type: boolean), _col11 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: boolean), VALUE._col2 (type: boolean), VALUE._col3 (type: boolean), VALUE._col4 (type: boolean), VALUE._col5 (type: boolean), VALUE._col6 (type: boolean), VALUE._col7 (type: boolean), VALUE._col8 (type: boolean), VALUE._col9 (type: boolean), VALUE._col10 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 1710 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+PREHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+POSTHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL true true true true true true NULL true original
+2 1 true true true true true true true NULL true original
+3 1 NULL NULL true true true true true true true original
+4 1 true NULL true true true true true NULL true original
+5 2 true true false true true false false true false new
+6 1 true true true false true true false true true new
+PREHOOK: query: drop table part_change_various_various_boolean
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: drop table part_change_various_various_boolean
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_tinyint
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: tinyint), c2 (type: tinyint), c3 (type: tinyint), c4 (type: tinyint), c5 (type: tinyint), c6 (type: tinyint), c7 (type: tinyint), c8 (type: tinyint), c9 (type: tinyint), c10 (type: tinyint), c11 (type: tinyint), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: tinyint), _col3 (type: tinyint), _col4 (type: tinyint), _col5 (type: tinyint), _col6 (type: tinyint), _col7 (type: tinyint), _col8 (type: tinyint), _col9 (type: tinyint), _col10 (type: tinyint), _col11 (type: tinyint), _col12 (type: tinyint), _col13 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: tinyint), VALUE._col2 (type: tinyint), VALUE._col3 (type: tinyint), VALUE._col4 (type: tinyint), VALUE._col5 (type: tinyint), VALUE._col6 (type: tinyint), VALUE._col7 (type: tinyint), VALUE._col8 (type: tinyint), VALUE._col9 (type: tinyint), VALUE._col10 (type: tinyint), VALUE._col11 (type: tinyint), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2482 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+PREHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 -48 -51 -66 -29 119 119 73 73 73 -43 original
+2 1 1 -24 -63 -25 -67 34 34 NULL NULL NULL 105 original
+3 1 0 NULL -66 -38 30 85 85 1 1 1 84 original
+4 1 1 NULL 87 6 34 36 36 -77 -77 -77 60 original
+5 2 23 71 127 1 NULL -60 68 NULL NULL 40 93 new
+6 1 NULL 85 -126 NULL 91 113 -28 -63 0 8 NULL new
+PREHOOK: query: drop table part_change_various_various_tinyint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: drop table part_change_various_various_tinyint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_smallint
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: smallint), c2 (type: smallint), c3 (type: smallint), c4 (type: smallint), c5 (type: smallint), c6 (type: smallint), c7 (type: smallint), c8 (type: smallint), c9 (type: smallint), c10 (type: smallint), c11 (type: smallint), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: smallint), _col3 (type: smallint), _col4 (type: smallint), _col5 (type: smallint), _col6 (type: smallint), _col7 (type: smallint), _col8 (type: smallint), _col9 (type: smallint), _col10 (type: smallint), _col11 (type: smallint), _col12 (type: smallint), _col13 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: smallint), VALUE._col2 (type: smallint), VALUE._col3 (type: smallint), VALUE._col4 (type: smallint), VALUE._col5 (type: smallint), VALUE._col6 (type: smallint), VALUE._col7 (type: smallint), VALUE._col8 (type: smallint), VALUE._col9 (type: smallint), VALUE._col10 (type: smallint), VALUE._col11 (type: smallint), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2498 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+PREHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+POSTHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL 7373 -32578 -29 119 119 -2999 -2999 -2999 -11819 original
+2 1 1 100 25025 29415 -3651 -19422 -19422 NULL NULL NULL 29801 original
+3 1 0 72 -32578 -27686 30 -939 -939 1 1 1 -8620 original
+4 1 1 -90 14935 12294 -19422 9764 9764 5299 5299 5299 -17092 original
+5 2 -30486 15230 3117 1 -117 -7131 20227 -24858 -28771 NULL NULL new
+6 1 -10542 -1805 -4844 15507 91 22385 -28 -12268 0 NULL 774 new
+PREHOOK: query: drop table part_change_various_various_smallint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: drop table part_change_various_various_smallint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_int
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: int), c2 (type: int), c3 (type: int), c4 (type: int), c5 (type: int), c6 (type: int), c7 (type: int), c8 (type: int), c9 (type: int), c10 (type: int), c11 (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: int), _col4 (type: int), _col5 (type: int), _col6 (type: int), _col7 (type: int), _col8 (type: int), _col9 (type: int), _col10 (type: int), _col11 (type: int), _col12 (type: int), _col13 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: int), VALUE._col3 (type: int), VALUE._col4 (type: int), VALUE._col5 (type: int), VALUE._col6 (type: int), VALUE._col7 (type: int), VALUE._col8 (type: int), VALUE._col9 (type: int), VALUE._col10 (type: int), VALUE._col11 (type: int), VALUE._col12 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 2494 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+PREHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+POSTHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -1888628267 original
+2 1 1 100 NULL 1903063783 -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 1272503892 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 5299 5299 5299 1021033788 original
+5 2 560930 -1281818 127 1 84269672 -60 27094665 -36016110 -182 3244222 561431 new
+6 1 -1928921 695025 -151775655 -167 91 113 -164341325 -134237413 0 6229 4422 new
+PREHOOK: query: drop table part_change_various_various_int
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: drop table part_change_various_various_int
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL NULL -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 1998287.3541 1998287.3541 1998287.3541 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_bigint
+ Statistics: Num rows: 6 Data size: 2578 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: bigint), c2 (type: bigint), c3 (type: bigint), c4 (type: bigint), c5 (type: bigint), c6 (type: bigint), c7 (type: bigint), c8 (type: bigint), c9 (type: bigint), c10 (type: bigint), c11 (type: bigint), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10,
<TRUNCATED>
[38/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_table.q
index b006acb..09f4f22 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_acid_mapwork_table.q
@@ -1,56 +1,755 @@
set hive.cli.print.header=true;
set hive.support.concurrency=true;
set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
SET hive.exec.schema.evolution=false;
-SET hive.vectorized.execution.enabled=false;
+SET hive.vectorized.use.vectorized.input.format=true;
+SET hive.vectorized.use.vector.serde.deserialize=false;
+SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=false;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int);
+
+insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40);
+
+insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
+
+-- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_permute_select order by insert_num;
+select insert_num,c from table_add_int_permute_select order by insert_num;
+
+drop table table_add_int_permute_select;
+
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string);
+alter table table_add_int_string_permute_select add columns(c int, d string);
-insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1;
-select a,b,c from table1;
-select a,b,c,d from table1;
-select a,c,d from table1;
-select a,d from table1;
-select c from table1;
-select d from table1;
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,d from table_add_int_string_permute_select order by insert_num;
+
+drop table table_add_int_string_permute_select;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new');
+
+insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+drop table table_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new');
+insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+drop table table_change_date_group_string_group_timestamp;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+drop table table_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar;
+
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
--
-CREATE TABLE table2(a smallint, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
-insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int;
+alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING) ;
-insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
-insert into table table2 values(5000, 'new'),(90000, 'new');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
-select a,b from table2;
+drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, - 832222222, 255, 4957,'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_string;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957,'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
+
+CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 832222222, -255, 4957, 'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_string
+ values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING) ;
+
+insert into table table_change_string_group_string_group_string
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+drop table table_change_string_group_string_group_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_char
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_char
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+drop table table_change_string_group_string_group_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_varchar
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_varchar
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+drop table table_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (1, 45, 45, 45, 45, 45, 45, 'original'),
+ (2, -2, -2, -2, -2, -2, -2, 'original'),
+ (3, -255, -255, -255, -255, -255, -255, 'original'),
+ (4, 100, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (5, '774', '2031', '200', '12', '99', '0', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', '6', 'new'),
+ (7, '256', '32768', '31889', '300', '444', '506', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
+ (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', '18', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, -5000, 'original'),
+ (4, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (5, '774', '2031', '200', '12', '99', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', 'new'),
+ (7, '256', '32768', '31889', '300', '444', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', 'new'),
+ (9, '100', '5000', '5443', '22', '2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (1, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (5, '774', '2031', '200', '12', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', 'new'),
+ (7, '256', '32768', '31889', '300', 'new'),
+ (8, '5555', '40000', '-719017797', '45', 'new'),
+ (9, '100', '5000', '5443', '22', 'new'),
+ (10, '17', '90000', '754072151', '95', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (1, 7203778961, 7203778961, 7203778961, 'original'),
+ (2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (5, '774', '2031', '200', 'new'),
+ (6, '561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (1, -29.0764, -29.0764, 'original'),
+ (2, 753.7028, 753.7028, 'original'),
+ (3, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (5, '7.74', '22.3', 'new'),
+ (6, '56.1431', '90.9', 'new'),
+ (7, '2.56', '25.6', 'new'),
+ (8, '555.5', '55.55', 'new'),
+ (9, '10.0', '0.100', 'new'),
+ (10, '1.7', '17.8888', 'new');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (1, -29.0764, 'original'),
+ (2, 753.7028, 'original'),
+ (3, -5000, 'original'),
+ (4, 52927714, 'original');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (5, '774', 'new'),
+ (6, '561431', 'new'),
+ (7, '256', 'new'),
+ (8, '5555', 'new'),
+ (9, '100', 'new'),
+ (10, '17', 'new');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_float;
@@ -58,16 +757,26 @@ select a,b from table2;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
-CREATE TABLE table5(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table5(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table5 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table5
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table5 add columns(c int, d string);
-insert into table table5 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table5
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table5 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table5
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table5;
@@ -81,16 +790,26 @@ select a,b,c,d from table5;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
-CREATE TABLE table6(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table6(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table6 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table6
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table6 add columns(c int, d string);
-insert into table table6 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table6
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table6 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table6
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table6;
@@ -104,16 +823,26 @@ select a,b,c,d from table6;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
-CREATE TABLE table7(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table7(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table7 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table7
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table7 add columns(c int, d string);
-insert into table table7 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table7
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table7 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table7
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table7;
@@ -122,9 +851,6 @@ delete from table7 where a = 1 or c = 30 or c == 100;
select a,b,c,d from table7;
-
-DROP TABLE table1;
-DROP TABLE table2;
DROP TABLE table5;
DROP TABLE table6;
DROP TABLE table7;
\ No newline at end of file
[13/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_table.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_table.q.out
index 4885aeb..b1214e0 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_table.q.out
@@ -2,291 +2,2918 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, ACID Non-Vectorized, MapWork, Table
+-- *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 table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__19
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__19
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__20
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__20
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 48377 -2386 original
+10 17 90000 75407 32890 new
+2 -2 -6737 56 28899 original
+3 NULL 4957 83222 90000 original
+4 0 20435 84749 -9999 original
+5 2000 72909 32442 -9322 new
+6 1 200 23233 54309 new
+7 256 32768 31889 47061 new
+8 5555 40000 -7190 81066 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__21
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__21
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__22
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__22
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__23
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__23
+POSTHOOK: Output
<TRUNCATED>
[29/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_table.q
index 1028777..b20f7e8 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vec_mapwork_table.q
@@ -1,11 +1,11 @@
set hive.explain.user=true;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=true;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part.q
index 086ebd2..c54ed91 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=true;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_complex.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_complex.q b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_complex.q
index 2553527..7737abf 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_complex.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_complex.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=true;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_primitive.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_primitive.q b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_primitive.q
index f2cada2..09e544a 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_primitive.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_part_all_primitive.q
@@ -2,11 +2,11 @@ set hive.explain.user=true;
set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=true;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=false;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_table.q
index de0b7ba..8871623 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_text_vecrow_mapwork_table.q
@@ -1,11 +1,11 @@
set hive.explain.user=true;
set hive.cli.print.header=true;
SET hive.exec.schema.evolution=true;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=false;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=true;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.metastore.disallow.incompatible.col.type.changes=true;
set hive.default.fileformat=textfile;
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_replace_columns2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_replace_columns2.q.out b/ql/src/test/results/clientnegative/orc_replace_columns2.q.out
index d581c79..83b55f9 100644
--- a/ql/src/test/results/clientnegative/orc_replace_columns2.q.out
+++ b/ql/src/test/results/clientnegative/orc_replace_columns2.q.out
@@ -1,13 +1,18 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+PREHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key tinyint, val string) stored as orc
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+POSTHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key tinyint, val string) stored as orc
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
-PREHOOK: query: alter table src_orc replace columns (k smallint, val string)
+PREHOOK: query: alter table src_orc replace columns (k smallint, val int)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Replacing columns with unsupported type conversion (from tinyint to smallint) for column k. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+val
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out b/ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out
index 41df688..2ef833d 100644
--- a/ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out
+++ b/ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out
@@ -1,13 +1,18 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
-PREHOOK: query: alter table src_orc replace columns (k smallint, val string)
+PREHOOK: query: alter table src_orc replace columns (k smallint, val int)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Replacing columns with unsupported type conversion (from tinyint to smallint) for column k. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+val
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_replace_columns3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_replace_columns3.q.out b/ql/src/test/results/clientnegative/orc_replace_columns3.q.out
index 2deb3cb..54408a0 100644
--- a/ql/src/test/results/clientnegative/orc_replace_columns3.q.out
+++ b/ql/src/test/results/clientnegative/orc_replace_columns3.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key smallint, val string) stored as orc
+PREHOOK: query: -- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) stored as orc
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key smallint, val string) stored as orc
+POSTHOOK: query: -- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) stored as orc
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -18,4 +22,5 @@ PREHOOK: query: alter table src_orc replace columns (k int, val string, z tinyin
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Replacing columns with unsupported type conversion (from smallint to tinyint) for column z. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+z
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out b/ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out
index 3fb1e32..3aefca0 100644
--- a/ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out
+++ b/ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: query: -- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: query: -- Currently, smallint to tinyint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -18,4 +22,5 @@ PREHOOK: query: alter table src_orc replace columns (k int, val string, z tinyin
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Replacing columns with unsupported type conversion (from smallint to tinyint) for column z. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+z
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion1.q.out b/ql/src/test/results/clientnegative/orc_type_promotion1.q.out
index aa3b64a..080cfd0 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion1.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion1.q.out
@@ -1,13 +1,18 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+PREHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) stored as orc
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+POSTHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) stored as orc
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
-PREHOOK: query: alter table src_orc change key key float
+PREHOOK: query: alter table src_orc change key key int
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type tinyint to float is not supported for column key. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+key
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out b/ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out
index 030ca35..f3b1ae8 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out
@@ -1,13 +1,18 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: query: -- Currently, string to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key string, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
-PREHOOK: query: alter table src_orc change key key float
+PREHOOK: query: alter table src_orc change key key int
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type tinyint to float is not supported for column key. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+key
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion2.q.out b/ql/src/test/results/clientnegative/orc_type_promotion2.q.out
index 44ac44f..4205901 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion2.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion2.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key smallint, val string) stored as orc
+PREHOOK: query: -- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) stored as orc
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key smallint, val string) stored as orc
+POSTHOOK: query: -- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) stored as orc
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -62,8 +66,9 @@ POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_orc
key bigint
val string
-PREHOOK: query: alter table src_orc change val val char(100)
+PREHOOK: query: alter table src_orc change val val int
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type string to char(100) is not supported for column val. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+val
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out b/ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out
index 77e2e8d..9129782 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: query: -- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: query: -- Currently, bigint to int conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key smallint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -62,8 +66,9 @@ POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_orc
key bigint
val string
-PREHOOK: query: alter table src_orc change val val char(100)
+PREHOOK: query: alter table src_orc change val val int
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type string to char(100) is not supported for column val. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+val
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion3.q.out b/ql/src/test/results/clientnegative/orc_type_promotion3.q.out
index b4630d6..1872803 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion3.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion3.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+PREHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) stored as orc
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) stored as orc
+POSTHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) stored as orc
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -10,4 +14,5 @@ PREHOOK: query: alter table src_orc change key key smallint
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type tinyint to smallint is not supported for column key. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+key
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q b/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q
new file mode 100644
index 0000000..bd33c6c
--- /dev/null
+++ b/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q
@@ -0,0 +1,18 @@
+PREHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@src_orc
+POSTHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@src_orc
+PREHOOK: query: alter table src_orc change key key smallint
+PREHOOK: type: ALTERTABLE_RENAMECOL
+PREHOOK: Input: default@src_orc
+PREHOOK: Output: default@src_orc
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+key
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out b/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out
index 19400ce..bd33c6c 100644
--- a/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out
+++ b/ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out
@@ -1,8 +1,12 @@
-PREHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+PREHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@src_orc
-POSTHOOK: query: create table src_orc (key tinyint, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
+POSTHOOK: query: -- Currently, double to smallint conversion is not supported because it isn't in the lossless
+-- TypeIntoUtils.implicitConvertible conversions.
+create table src_orc (key double, val string) clustered by (val) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true')
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@src_orc
@@ -10,4 +14,5 @@ PREHOOK: query: alter table src_orc change key key smallint
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@src_orc
PREHOOK: Output: default@src_orc
-FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Changing from type tinyint to smallint is not supported for column key. SerDe may be incompatible
+FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. The following columns have types incompatible with the existing columns in their respective positions :
+key
[36/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_table.q b/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_table.q
index ca6822c..63de008 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_table.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_table.q
@@ -1,59 +1,755 @@
set hive.cli.print.header=true;
set hive.support.concurrency=true;
set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
SET hive.exec.schema.evolution=false;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=true;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int);
+
+insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40);
+
+insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
+
+-- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_permute_select order by insert_num;
+select insert_num,c from table_add_int_permute_select order by insert_num;
+
+drop table table_add_int_permute_select;
+
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string);
+alter table table_add_int_string_permute_select add columns(c int, d string);
-insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1;
-select a,b,c from table1;
-select a,b,c,d from table1;
-select a,c,d from table1;
-select a,d from table1;
-select c from table1;
-select d from table1;
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,a,d from table_add_int_string_permute_select order by insert_num;
+select insert_num,c from table_add_int_string_permute_select order by insert_num;
+select insert_num,d from table_add_int_string_permute_select order by insert_num;
+
+drop table table_add_int_string_permute_select;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new');
+
+insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num;
+
+drop table table_change_string_group_double;
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new');
+insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num;
+
+drop table table_change_date_group_string_group_timestamp;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original');
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING);
+
+insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num;
+
+drop table table_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_multi_ints_varchar;
+
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
--
-CREATE TABLE table2(a smallint, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original');
-insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int;
+alter table table_change_numeric_group_string_group_multi_ints_varchar_trunc replace columns (insert_num int, c1 VARCHAR(5), c2 VARCHAR(5), c3 VARCHAR(5), c4 VARCHAR(5), b STRING) ;
-insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new');
-insert into table table2 values(5000, 'new'),(90000, 'new');
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
-select a,b from table2;
+drop table table_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (FLOAT, DOUBLE, DECIMAL), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_string(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, - 832222222, 255, 4957,'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_string
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_string;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_char(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957,'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), CHAR truncation
+
+CREATE TABLE table_change_numeric_group_string_group_floating_char_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 832222222, -255, 4957, 'original'),
+ (4, 847492223, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_char_trunc replace columns (insert_num int, c1 CHAR(7), c2 CHAR(7), c3 CHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_char_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar(insert_num int, c1 float, c2 double, c3 decimal(38,18), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (DECIMAL, FLOAT, DOUBLE), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_floating_varchar_trunc(insert_num int, c1 decimal(38,18), c2 float, c3 double, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (1, -23866739993, 753.7028, -3651.672121, 'original'),
+ (2, -10.3, -2, -29.0764, 'original'),
+ (3, 9000000000, -255, 4957, 'original'),
+ (4, -999999999999, 0, 20435, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_floating_varchar_trunc replace columns (insert_num int, c1 VARCHAR(7), c2 VARCHAR(7), c3 VARCHAR(7), b STRING) ;
+
+insert into table table_change_numeric_group_string_group_floating_varchar_trunc
+ values (5, '30.774', '20.31', '46114.284799488', 'new'),
+ (6, '-66475.561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table table_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: STRING, (CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_string_group_string_group_string(insert_num int, c1 string, c2 string, c3 string, c4 string, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_string
+ values (1, 'escapist', 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_string replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 VARCHAR(50), c4 CHAR(9), b STRING) ;
+
+insert into table table_change_string_group_string_group_string
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_string_group_string_group_string order by insert_num;
+
+drop table table_change_string_group_string_group_string;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: CHAR, (VARCHAR, VARCHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_char(insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_char
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_char replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_char
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_char order by insert_num;
+
+drop table table_change_string_group_string_group_char;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> STRING_GROUP: VARCHAR, (CHAR, CHAR trunc, STRING)
+--
+CREATE TABLE table_change_string_group_string_group_varchar(insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_string_group_string_group_varchar
+ values (1, 'escapist', 'escapist', 'escapist', 'original'),
+ (2, 'heartbeat', 'heartbeat', 'heartbeat', 'original'),
+ (3, 'dynamic reptile', 'dynamic reptile', 'dynamic reptile', 'original'),
+ (4, 'blank pads ', 'blank pads ', 'blank pads ', 'original');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_string_group_varchar replace columns (insert_num int, c1 CHAR(50), c2 CHAR(9), c3 STRING, b STRING) ;
+
+insert into table table_change_string_group_string_group_varchar
+ values (5, 'junkyard', 'junkyard', 'junkyard', 'new'),
+ (6, ' baffling ', ' baffling ', ' baffling ', 'new'),
+ (7, ' featherweight ', ' featherweight ',' featherweight ', 'new'),
+ (8, ' against', ' against', ' against', 'new'),
+ (9, 'hangar paralysed companion ', 'hangar paralysed companion ', 'hangar paralysed companion ', 'new'),
+ (10, 'bottom ', 'bottom ', 'bottom ', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_string_group_string_group_varchar order by insert_num;
+
+drop table table_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_tinyint(insert_num int, c1 tinyint, c2 tinyint, c3 tinyint, c4 tinyint, c5 tinyint, c6 tinyint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (1, 45, 45, 45, 45, 45, 45, 'original'),
+ (2, -2, -2, -2, -2, -2, -2, 'original'),
+ (3, -255, -255, -255, -255, -255, -255, 'original'),
+ (4, 100, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_tinyint replace columns (insert_num int, c1 SMALLINT, c2 INT, c3 BIGINT, c4 decimal(38,18), c5 FLOAT, c6 DOUBLE, b STRING);
+
+insert into table table_change_lower_to_higher_numeric_group_tinyint
+ values (5, '774', '2031', '200', '12', '99', '0', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', '6', 'new'),
+ (7, '256', '32768', '31889', '300', '444', '506', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', '65', 'new'),
+ (9, '100', '5000', '5443', '22', '2', '-2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', '18', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,c6,b from table_change_lower_to_higher_numeric_group_tinyint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: SMALLINT, (INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_smallint(insert_num int, c1 smallint, c2 smallint, c3 smallint, c4 smallint, c5 smallint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (1, 2031, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, -5000, 'original'),
+ (4, 100, 100, 100, 100, 100, 'original');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_smallint replace columns (insert_num int, c1 INT, c2 BIGINT, c3 decimal(38,18), c4 FLOAT, c5 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_smallint
+ values (5, '774', '2031', '200', '12', '99', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', '7', 'new'),
+ (7, '256', '32768', '31889', '300', '444', 'new'),
+ (8, '5555', '40000', '-719017797', '45', '55', 'new'),
+ (9, '100', '5000', '5443', '22', '2', 'new'),
+ (10, '17', '90000', '754072151', '95', '20', 'new');
+
+select insert_num,c1,c2,c3,c4,c5,b from table_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: INT, (BIGINT, DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_int(insert_num int, c1 int, c2 int, c3 int, c4 int, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (1, 2031, 2031, 2031, 2031, 'original'),
+ (2, -2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_int replace columns (insert_num int, c1 BIGINT, c2 decimal(38,18), c3 FLOAT, c4 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_int
+ values (5, '774', '2031', '200', '12', 'new'),
+ (6, '561431', '52927714', '7203778961', '8', 'new'),
+ (7, '256', '32768', '31889', '300', 'new'),
+ (8, '5555', '40000', '-719017797', '45', 'new'),
+ (9, '100', '5000', '5443', '22', 'new'),
+ (10, '17', '90000', '754072151', '95', 'new');
+
+select insert_num,c1,c2,c3,c4,b from table_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: BIGINT, (DECIMAL, FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_bigint(insert_num int, c1 bigint, c2 bigint, c3 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (1, 7203778961, 7203778961, 7203778961, 'original'),
+ (2, -2, -2, -2, 'original'),
+ (3, -5000, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_bigint replace columns (insert_num int, c1 decimal(38,18), c2 FLOAT, c3 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_bigint
+ values (5, '774', '2031', '200', 'new'),
+ (6, '561431', '52927714', '7203778961', 'new'),
+ (7, '256', '32768', '31889', 'new'),
+ (8, '5555', '40000', '-719017797', 'new'),
+ (9, '100', '5000', '5443', 'new'),
+ (10, '17', '90000', '754072151', 'new');
+
+select insert_num,c1,c2,c3,b from table_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: DECIMAL, (FLOAT, DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_decimal(insert_num int, c1 decimal(38,18), c2 decimal(38,18), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (1, -29.0764, -29.0764, 'original'),
+ (2, 753.7028, 753.7028, 'original'),
+ (3, -5000, -5000, 'original'),
+ (4, 52927714, 52927714, 'original');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_decimal replace columns (insert_num int, c1 float, c2 double, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_decimal
+ values (5, '7.74', '22.3', 'new'),
+ (6, '56.1431', '90.9', 'new'),
+ (7, '2.56', '25.6', 'new'),
+ (8, '555.5', '55.55', 'new'),
+ (9, '10.0', '0.100', 'new'),
+ (10, '1.7', '17.8888', 'new');
+
+select insert_num,c1,c2,b from table_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_decimal;
+
+
+
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: FLOAT, (DOUBLE)
+--
+CREATE TABLE table_change_lower_to_higher_numeric_group_float(insert_num int, c1 float, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (1, -29.0764, 'original'),
+ (2, 753.7028, 'original'),
+ (3, -5000, 'original'),
+ (4, 52927714, 'original');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+insert into table table_change_lower_to_higher_numeric_group_float
+ values (5, '774', 'new'),
+ (6, '561431', 'new'),
+ (7, '256', 'new'),
+ (8, '5555', 'new'),
+ (9, '100', 'new'),
+ (10, '17', 'new');
+
+select insert_num,c1,b from table_change_lower_to_higher_numeric_group_float order by insert_num;
+
+drop table table_change_lower_to_higher_numeric_group_float;
@@ -61,16 +757,26 @@ select a,b from table2;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
-CREATE TABLE table5(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table5(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table5 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table5
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table5 add columns(c int, d string);
-insert into table table5 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table5
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table5 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table5
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table5;
@@ -84,16 +790,26 @@ select a,b,c,d from table5;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
-CREATE TABLE table6(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table6(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table6 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table6
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table6 add columns(c int, d string);
-insert into table table6 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table6
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table6 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table6
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table6;
@@ -107,16 +823,26 @@ select a,b,c,d from table6;
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
-CREATE TABLE table7(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+CREATE TABLE table7(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
-insert into table table7 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table table7
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
alter table table7 add columns(c int, d string);
-insert into table table7 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+insert into table table7
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty');
-insert into table table7 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table table7
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
select a,b,c,d from table7;
@@ -125,9 +851,6 @@ delete from table7 where a = 1 or c = 30 or c == 100;
select a,b,c,d from table7;
-
-DROP TABLE table1;
-DROP TABLE table2;
DROP TABLE table5;
DROP TABLE table6;
DROP TABLE table7;
\ No newline at end of file
[25/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_table.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_table.q.out
index 2b1e5c3..4a74b8a 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_table.q.out
@@ -2,291 +2,2918 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID Vectorized, MapWork, Table
-- *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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, ACID Vectorized, MapWork, Table
+-- *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 table_add_int_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_permute_select add columns(c int)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__19
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__19
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__19)values__tmp__table__19.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char_trunc replace columns (insert_num int, c1 CHAR(5), c2 CHAR(5), c3 CHAR(5), c4 CHAR(5), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__20
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char_trunc
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__20
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.b SIMPLE [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c1 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c2 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c3 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.c4 EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char_trunc.insert_num EXPRESSION [(values__tmp__table__20)values__tmp__table__20.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 48377 -2386 original
+10 17 90000 75407 32890 new
+2 -2 -6737 56 28899 original
+3 NULL 4957 83222 90000 original
+4 0 20435 84749 -9999 original
+5 2000 72909 32442 -9322 new
+6 1 200 23233 54309 new
+7 256 32768 31889 47061 new
+8 5555 40000 -7190 81066 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char_trunc
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__21
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__21
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__21)values__tmp__table__21.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_varchar replace columns (insert_num int, c1 VARCHAR(50), c2 VARCHAR(50), c3 VARCHAR(50), c4 VARCHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__22
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__22
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.b SIMPLE [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c1 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c2 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c3 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.c4 EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_varchar.insert_num EXPRESSION [(values__tmp__table__22)values__tmp__table__22.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_varchar order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_varchar
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), VARCHAR truncation
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_varchar_trunc(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING) clustered by (c1) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__23
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_varchar_trunc
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_varchar_trunc
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__23
+POSTHOOK: Output: default@tab
<TRUNCATED>
[21/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
new file mode 100644
index 0000000..97e8fc0
--- /dev/null
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part_all_complex.q.out
@@ -0,0 +1,726 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned --> all complex conversions
+--
+------------------------------------------------------------------------------------------
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: STRUCT<BOOLEAN, TINYINT, SMALLINT, INT, LONG, FLOAT, DOUBLE, DECIMAL(38,18), CHAR, VARCHAR, TIMESTAMP, DATE, BINARY> --> STRUCT<STRING...
+--
+CREATE TABLE part_change_various_various_struct1(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: CREATE TABLE struct1_a_txt(insert_num int, s1 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_a.txt' overwrite into table struct1_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_a_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_a_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_a_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_a_txt)struct1_a_txt.FieldSchema(name:s1, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct1_a_txt.insert_num struct1_a_txt.s1 struct1_a_txt.b
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af} original
+2 1 {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af} original
+3 1 {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af} original
+4 1 {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af} original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_struct1 replace columns (insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: CREATE TABLE struct1_b_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_b.txt' overwrite into table struct1_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_b_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_b_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=2) select * from struct1_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_b_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=2
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).b SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).insert_num SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=2).s1 SIMPLE [(struct1_b_txt)struct1_b_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_b_txt.insert_num struct1_b_txt.s1 struct1_b_txt.b
+PREHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: CREATE TABLE struct1_c_txt(insert_num int, s1 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>, b STRING)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct1_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct1_c.txt' overwrite into table struct1_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct1_c_txt
+PREHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct1_c_txt
+PREHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: query: insert into table part_change_various_various_struct1 partition(part=1) select * from struct1_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct1_c_txt
+POSTHOOK: Output: default@part_change_various_various_struct1@part=1
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).b SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).insert_num SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_change_various_various_struct1 PARTITION(part=1).s1 SIMPLE [(struct1_c_txt)struct1_c_txt.FieldSchema(name:s1, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct1_c_txt.insert_num struct1_c_txt.s1 struct1_c_txt.b
+PREHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_various_various_struct1
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), s1 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 6 Data size: 4710 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Input: default@part_change_various_various_struct1@part=1
+PREHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,s1,b from part_change_various_various_struct1 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=1
+POSTHOOK: Input: default@part_change_various_various_struct1@part=2
+#### A masked pattern was here ####
+insert_num part s1 b
+1 1 {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"} original
+2 1 {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"} original
+3 1 {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"} original
+4 1 {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"} original
+5 2 {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"} new
+6 1 {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"} new
+PREHOOK: query: drop table part_change_various_various_struct1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_struct1
+PREHOOK: Output: default@part_change_various_various_struct1
+POSTHOOK: query: drop table part_change_various_various_struct1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_struct1
+POSTHOOK: Output: default@part_change_various_various_struct1
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: STRUCT
+--
+CREATE TABLE part_add_various_various_struct2(insert_num int, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1)
+ values(1, 'original'),
+ (2, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1
+PREHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+#### A masked pattern was here ####
+insert_num part b
+1 1 original
+2 1 original
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMN ...
+alter table part_add_various_various_struct2 ADD columns (s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: CREATE TABLE struct2_a_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_a.txt' overwrite into table struct2_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_a_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_a_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_a_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_a_txt)struct2_a_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_a_txt.insert_num struct2_a_txt.b struct2_a_txt.s2
+PREHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: CREATE TABLE struct2_b_txt(insert_num int, b STRING, s2 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_b.txt' overwrite into table struct2_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_b_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_b_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_b_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_b_txt)struct2_b_txt.FieldSchema(name:s2, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct2_b_txt.insert_num struct2_b_txt.b struct2_b_txt.s2
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":-29.0764,"c7":4.70614135E8,"c8":470614135,"c9":"dynamic reptile ","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":n)\u06af}
+4 1 new {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":-3651.672,"c7":46114.284799488,"c8":46114.284799488,"c9":" baffling ","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":n)\u06af}
+5 2 new {"c1":false,"c2":72,"c3":null,"c4":-93222,"c5":30,"c6":-66475.56,"c7":-66475.561431,"c8":0.561431,"c9":"1 ","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":n)\u06af}
+6 2 new {"c1":null,"c2":-90,"c3":null,"c4":3289094,"c5":46114,"c6":9250341.0,"c7":9250340.75,"c8":9250340.75,"c9":"junkyard ","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":n)\u06af}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_various_various_struct2 REPLACE columns (insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: CREATE TABLE struct2_c_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_c.txt' overwrite into table struct2_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_c_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_c_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=2) select * from struct2_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_c_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=2
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).b SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).insert_num SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=2).s2 SIMPLE [(struct2_c_txt)struct2_c_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_c_txt.insert_num struct2_c_txt.b struct2_c_txt.s2
+PREHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: CREATE TABLE struct2_d_txt(insert_num int, b STRING, s2 STRUCT<c1:STRING, c2:STRING, c3:STRING, c4:STRING, c5:STRING, c6:STRING, c7:STRING, c8:STRING, c9:STRING, c10:STRING, c11:STRING, c12:STRING, c13:STRING>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct2_d_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct2_d.txt' overwrite into table struct2_d_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct2_d_txt
+PREHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct2_d_txt
+PREHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: query: insert into table part_add_various_various_struct2 partition(part=1) select * from struct2_d_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct2_d_txt
+POSTHOOK: Output: default@part_add_various_various_struct2@part=1
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).b SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).insert_num SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_various_various_struct2 PARTITION(part=1).s2 SIMPLE [(struct2_d_txt)struct2_d_txt.FieldSchema(name:s2, type:struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>, comment:null), ]
+struct2_d_txt.insert_num struct2_d_txt.b struct2_d_txt.s2
+PREHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_various_various_struct2
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), b (type: string), s2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: struct<c1:string,c2:string,c3:string,c4:string,c5:string,c6:string,c7:string,c8:string,c9:string,c10:string,c11:string,c12:string,c13:string>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 8 Data size: 4880 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Input: default@part_add_various_various_struct2@part=1
+PREHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s2 from part_add_various_various_struct2 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Input: default@part_add_various_various_struct2@part=1
+POSTHOOK: Input: default@part_add_various_various_struct2@part=2
+#### A masked pattern was here ####
+insert_num part b s2
+1 1 original NULL
+2 1 original NULL
+3 1 new {"c1":"TRUE","c2":null,"c3":null,"c4":"3244222","c5":"-99999999999","c6":"-29.0764","c7":"4.70614135E8","c8":"470614135","c9":"dynamic reptile","c10":"dynamic reptile ","c11":"0004-09-22 18:26:29.519542222","c12":"2007-02-09","c13":"6e 29 da af"}
+4 1 new {"c1":null,"c2":"100","c3":null,"c4":"14","c5":"-23866739993","c6":"-3651.672","c7":"46114.284799488","c8":"46114.284799488","c9":" baffling","c10":" baffling ","c11":"2007-02-09 05:17:29.368756876","c12":"0004-09-22","c13":"6e 29 da af"}
+5 2 new {"c1":"FALSE","c2":"72","c3":null,"c4":"-93222","c5":"30","c6":"-66475.56","c7":"-66475.561431","c8":"0.561431","c9":"1","c10":"1","c11":"6229-06-28 02:54:28.970117179","c12":"5966-07-09","c13":"6e 29 da af"}
+6 2 new {"c1":null,"c2":"-90","c3":null,"c4":"3289094","c5":"46114","c6":"9250341.0","c7":"9250340.75","c8":"9250340.75","c9":"junkyard","c10":"junkyard","c11":"2002-05-10 05:29:48.990818073","c12":"1815-05-06","c13":"6e 29 da af"}
+7 2 new {"c1":"true","c2":"400","c3":"44388","c4":"-100","c5":"953967041.","c6":"62.079153","c7":"718.78","c8":"1","c9":"verdict","c10":"verdict","c11":"timestamp","c12":"date","c13":"binary"}
+8 1 new {"c1":"false","c2":"-67","c3":"833","c4":"63993","c5":"1255178165.77663","c6":"905070.974","c7":"-4314.7918","c8":"-1240033819","c9":"trial","c10":"trial","c11":"2016-03-0703:02:22.0","c12":"2016-03-07","c13":"binary"}
+PREHOOK: query: drop table part_add_various_various_struct2
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_various_various_struct2
+PREHOOK: Output: default@part_add_various_various_struct2
+POSTHOOK: query: drop table part_add_various_various_struct2
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_various_various_struct2
+POSTHOOK: Output: default@part_add_various_various_struct2
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE ADD COLUMNS for Various --> Various: ADD COLUMNS to STRUCT type as LAST column of 3 columns
+--
+CREATE TABLE part_add_to_various_various_struct4(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: CREATE TABLE struct4_a_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_a_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_a.txt' overwrite into table struct4_a_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_a_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_a_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_a_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_a_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_a_txt)struct4_a_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint>, comment:null), ]
+struct4_a_txt.insert_num struct4_a_txt.b struct4_a_txt.s3
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993}
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_add_to_various_various_struct4 replace columns (insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
+PREHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: CREATE TABLE struct4_b_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_b_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_b.txt' overwrite into table struct4_b_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_b_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_b_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=2) select * from struct4_b_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_b_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=2
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).b SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).insert_num SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=2).s3 SIMPLE [(struct4_b_txt)struct4_b_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_b_txt.insert_num struct4_b_txt.b struct4_b_txt.s3
+PREHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: CREATE TABLE struct4_c_txt(insert_num int, b STRING, s3 STRUCT<c1:BOOLEAN, c2:TINYINT, c3:SMALLINT, c4:INT, c5:BIGINT, c6:FLOAT, c7:DOUBLE, c8:DECIMAL(38,18), c9:CHAR(25), c10:VARCHAR(25), c11:TIMESTAMP, c12:DATE, c13:BINARY>)
+row format delimited fields terminated by '|'
+collection items terminated by ','
+map keys terminated by ':' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@struct4_c_txt
+POSTHOOK: query: load data local inpath '../../data/files/struct4_c.txt' overwrite into table struct4_c_txt
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@struct4_c_txt
+PREHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+PREHOOK: type: QUERY
+PREHOOK: Input: default@struct4_c_txt
+PREHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: query: insert into table part_add_to_various_various_struct4 partition(part=1) select * from struct4_c_txt
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@struct4_c_txt
+POSTHOOK: Output: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).b SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:b, type:string, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).insert_num SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:insert_num, type:int, comment:null), ]
+POSTHOOK: Lineage: part_add_to_various_various_struct4 PARTITION(part=1).s3 SIMPLE [(struct4_c_txt)struct4_c_txt.FieldSchema(name:s3, type:struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>, comment:null), ]
+struct4_c_txt.insert_num struct4_c_txt.b struct4_c_txt.s3
+PREHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_to_various_various_struct4
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), b (type: string), s3 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: struct<c1:boolean,c2:tinyint,c3:smallint,c4:int,c5:bigint,c6:float,c7:double,c8:decimal(38,18),c9:char(25),c10:varchar(25),c11:timestamp,c12:date,c13:binary>)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 4 Data size: 1156 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+PREHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=1
+PREHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,b,s3 from part_add_to_various_various_struct4 order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=1
+POSTHOOK: Input: default@part_add_to_various_various_struct4@part=2
+#### A masked pattern was here ####
+insert_num part b s3
+1 1 original {"c1":true,"c2":null,"c3":null,"c4":3244222,"c5":-99999999999,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+2 1 original {"c1":null,"c2":100,"c3":null,"c4":14,"c5":-23866739993,"c6":null,"c7":null,"c8":null,"c9":null,"c10":null,"c11":null,"c12":null,"c13":null}
+3 2 new {"c1":true,"c2":null,"c3":null,"c4":-100,"c5":953967041,"c6":62.07915,"c7":718.78,"c8":1,"c9":"verdict ","c10":"verdict","c11":null,"c12":null,"c13":n)\u06af}
+4 1 new {"c1":false,"c2":-67,"c3":833,"c4":63993,"c5":1255178165,"c6":905071.0,"c7":-4314.7918,"c8":-1240033819,"c9":"trial ","c10":"trial","c11":null,"c12":"2016-03-07","c13":n)\u06af}
+PREHOOK: query: drop table part_add_to_various_various_struct4
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_add_to_various_various_struct4
+PREHOOK: Output: default@part_add_to_various_various_struct4
+POSTHOOK: query: drop table part_add_to_various_various_struct4
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_add_to_various_various_struct4
+POSTHOOK: Output: default@part_add_to_various_various_struct4
[28/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_part.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_part.q.out
index a922175..2ac6e4a 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_acid_mapwork_part.q.out
@@ -2,814 +2,3448 @@ 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- 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_nu
<TRUNCATED>
[14/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_part.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_part.q.out
index a922175..2ac6e4a 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acid_mapwork_part.q.out
@@ -2,814 +2,3448 @@ 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- 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 PARTITI
<TRUNCATED>
[26/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_part.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_part.q.out
index c5af165..72072b3 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_acidvec_mapwork_part.q.out
@@ -2,814 +2,3448 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- 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 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).in
<TRUNCATED>
[02/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_primitive.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
new file mode 100644
index 0000000..f9f4d0b
--- /dev/null
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_vec_mapwork_part_all_primitive.q.out
@@ -0,0 +1,2587 @@
+PREHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- SORT_QUERY_RESULTS
+--
+-- FILE VARIATION: ORC, Vectorized, MapWork, Partitioned --> all primitive conversions
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS Various --> Various
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BYTE, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, TIMESTAMP) --> BOOLEAN
+--
+CREATE TABLE part_change_various_various_boolean(insert_num int, c1 TINYINT, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__1
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values(1, 255, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, 'true', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 45, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, 200, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, 'time will come', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__1
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 true 0004-09-22 18:26:29.519542222 original
+2 1 45 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 NULL NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 6229-06-28 02:54:28.970117179 original
+4 1 1 NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 time will come 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_boolean replace columns (insert_num int, c1 BOOLEAN, c2 BOOLEAN, c3 BOOLEAN, c4 BOOLEAN, c5 BOOLEAN, c6 BOOLEAN, c7 BOOLEAN, c8 BOOLEAN, c9 BOOLEAN, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__2
+PREHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=2)
+ values (5, 1, true, false, 1, 0, false, false, true, false, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__2
+POSTHOOK: Output: default@part_change_various_various_boolean@part=2
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__3
+PREHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: query: insert into table part_change_various_various_boolean partition(part=1)
+ values (6, 0, 1, 1, false, 0, true, false, true, 0, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__3
+POSTHOOK: Output: default@part_change_various_various_boolean@part=1
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_boolean 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 _col4 _col5 _col6 _col7 _col8 _col9 _col10
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=6 width=285)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=6 width=285)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+ TableScan [TS_0] (rows=6 width=285)
+ default@part_change_various_various_boolean,part_change_various_various_boolean,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Input: default@part_change_various_various_boolean@part=1
+PREHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,b from part_change_various_various_boolean order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Input: default@part_change_various_various_boolean@part=1
+POSTHOOK: Input: default@part_change_various_various_boolean@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 b
+1 1 NULL true true true true true true NULL true original
+2 1 true true true true true true true NULL true original
+3 1 NULL NULL true true true true true true true original
+4 1 true NULL true true true true true NULL true original
+5 2 true true false true true false false true false new
+6 1 true true true false true true false true true new
+PREHOOK: query: drop table part_change_various_various_boolean
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_boolean
+PREHOOK: Output: default@part_change_various_various_boolean
+POSTHOOK: query: drop table part_change_various_various_boolean
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_boolean
+POSTHOOK: Output: default@part_change_various_various_boolean
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, SHORT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BYTE
+--
+CREATE TABLE part_change_various_various_tinyint(insert_num int, c1 BOOLEAN, c2 SMALLINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__4
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values(1, true, 2000, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 1000, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72909, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, 90000, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__4
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col3 _col4 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true 2000 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 1000 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false NULL 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true NULL 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_tinyint replace columns (insert_num int, c1 TINYINT, c2 TINYINT, c3 TINYINT, c4 TINYINT, c5 TINYINT, c6 TINYINT, c7 TINYINT, c8 TINYINT, c9 TINYINT, c10 TINYINT, c11 TINYINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__5
+PREHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=2)
+ values (5, 23, 71, 127, 1, 131, -60, 68, -230, -182, 40, 93, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__5
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=2
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c2 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c3 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__6
+PREHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: query: insert into table part_change_various_various_tinyint partition(part=1)
+ values (6, -248, 85, -126, -167, 91, 113, -28, -63, 0, 8, 237, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__6
+POSTHOOK: Output: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_tinyint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=6 width=413)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=6 width=413)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=413)
+ default@part_change_various_various_tinyint,part_change_various_various_tinyint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Input: default@part_change_various_various_tinyint@part=1
+PREHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_tinyint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=1
+POSTHOOK: Input: default@part_change_various_various_tinyint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 -48 -51 -66 -29 119 119 73 73 73 -43 original
+2 1 1 -24 -63 -25 -67 34 34 NULL NULL NULL 105 original
+3 1 0 NULL -66 -38 30 85 85 1 1 1 84 original
+4 1 1 NULL 87 6 34 36 36 -77 -77 -77 60 original
+5 2 23 71 127 1 NULL -60 68 NULL NULL 40 93 new
+6 1 NULL 85 -126 NULL 91 113 -28 -63 0 8 NULL new
+PREHOOK: query: drop table part_change_various_various_tinyint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_tinyint
+PREHOOK: Output: default@part_change_various_various_tinyint
+POSTHOOK: query: drop table part_change_various_various_tinyint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_tinyint
+POSTHOOK: Output: default@part_change_various_various_tinyint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, INT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> SMALLINT
+--
+CREATE TABLE part_change_various_various_smallint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 INT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL 72909 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 483777 -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 3244222 -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 754072151 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_smallint replace columns (insert_num int, c1 SMALLINT, c2 SMALLINT, c3 SMALLINT, c4 SMALLINT, c5 SMALLINT, c6 SMALLINT, c7 SMALLINT, c8 SMALLINT, c9 SMALLINT, c10 SMALLINT, c11 SMALLINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=2)
+ values (5, -30486, 15230, 3117, 1, -117, -7131, 20227, -24858, -28771, 46114, 72909, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@part_change_various_various_smallint@part=2
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=2).c4 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c5 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: query: insert into table part_change_various_various_smallint partition(part=1)
+ values (6, -10542, -1805, -4844, 15507, 91, 22385, -28, -12268, 0, 66475, 774, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@part_change_various_various_smallint@part=1
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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_various_various_smallint 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_various_various_smallint PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_smallint 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 _col5 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=6 width=416)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=6 width=416)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=416)
+ default@part_change_various_various_smallint,part_change_various_various_smallint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Input: default@part_change_various_various_smallint@part=1
+PREHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_smallint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Input: default@part_change_various_various_smallint@part=1
+POSTHOOK: Input: default@part_change_various_various_smallint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL 7373 -32578 -29 119 119 -2999 -2999 -2999 -11819 original
+2 1 1 100 25025 29415 -3651 -19422 -19422 NULL NULL NULL 29801 original
+3 1 0 72 -32578 -27686 30 -939 -939 1 1 1 -8620 original
+4 1 1 -90 14935 12294 -19422 9764 9764 5299 5299 5299 -17092 original
+5 2 -30486 15230 3117 1 -117 -7131 20227 -24858 -28771 NULL NULL new
+6 1 -10542 -1805 -4844 15507 91 22385 -28 -12268 0 NULL 774 new
+PREHOOK: query: drop table part_change_various_various_smallint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_smallint
+PREHOOK: Output: default@part_change_various_various_smallint
+POSTHOOK: query: drop table part_change_various_various_smallint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_smallint
+POSTHOOK: Output: default@part_change_various_various_smallint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, LONG, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> INT
+--
+CREATE TABLE part_change_various_various_int(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 BIGINT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL -23866739993 -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 5299 5299 5299 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_int replace columns (insert_num int, c1 INT, c2 INT, c3 INT, c4 INT, c5 INT, c6 INT, c7 INT, c8 INT, c9 INT, c10 INT, c11 INT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=2)
+ values (5, 560930, -1281818, 127, 1, 84269672, -60, 27094665, -36016110, -182, 3244222, 561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@part_change_various_various_int@part=2
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: query: insert into table part_change_various_various_int partition(part=1)
+ values (6, -1928921, 695025, -151775655, -167, 91, 113, -164341325, -134237413, 0, 6229, 4422, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@part_change_various_various_int@part=1
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int 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_various_various_int PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_int 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=6 width=415)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=6 width=415)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=415)
+ default@part_change_various_various_int,part_change_various_various_int,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Input: default@part_change_various_various_int@part=1
+PREHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_int order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Input: default@part_change_various_various_int@part=1
+POSTHOOK: Input: default@part_change_various_various_int@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -1888628267 original
+2 1 1 100 NULL 1903063783 -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 1272503892 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 5299 5299 5299 1021033788 original
+5 2 560930 -1281818 127 1 84269672 -60 27094665 -36016110 -182 3244222 561431 new
+6 1 -1928921 695025 -151775655 -167 91 113 -164341325 -134237413 0 6229 4422 new
+PREHOOK: query: drop table part_change_various_various_int
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_int
+PREHOOK: Output: default@part_change_various_various_int
+POSTHOOK: query: drop table part_change_various_various_int
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_int
+POSTHOOK: Output: default@part_change_various_various_int
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, FLOAT, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> BIGINT
+--
+CREATE TABLE part_change_various_various_bigint(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 FLOAT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '1', '1', '1', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '1998287.3541', '1998287.3541', '1998287.3541', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 true NULL NULL 3244222 -29.0764 4.70614135E8 470614135.000000000000000000 -2999 -2999 -2999 0004-09-22 18:26:29.519542222 original
+2 1 true 100 NULL NULL -3651.672 46114.284799488 46114.284799488000000000 2007-02-09 05:17:29.368756876 original
+3 1 false 72 NULL -93222 30.774 -66475.561431 -66475.561431000000000000 1 1 1 6229-06-28 02:54:28.970117179 original
+4 1 true -90 NULL 3289094 46114.285 9250340.75 9250340.750000000000000000 1998287.3541 1998287.3541 1998287.3541 2002-05-10 05:29:48.990818073 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_various_various_bigint replace columns (insert_num int, c1 BIGINT, c2 BIGINT, c3 BIGINT, c4 BIGINT, c5 BIGINT, c6 BIGINT, c7 BIGINT, c8 BIGINT, c9 BIGINT, c10 BIGINT, c11 BIGINT, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=2)
+ values (5, 5573199346255528403, 71, 151775655, 1, 131, -60, 6275638713485623898, -230, -695025, 519542222, -29.0764, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@part_change_various_various_bigint@part=2
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c1 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c10 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c11 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=2).c6 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c7 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c8 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=2).c9 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: query: insert into table part_change_various_various_bigint partition(part=1)
+ values (6, -164341325, 9043162437544575070, -126, -6566204574741299000, 91, 113, -28, -63, 0, 3244222, -90, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@part_change_various_various_bigint@part=1
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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_various_various_bigint 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_various_various_bigint 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_various_various_bigint PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c8 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col9, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint PARTITION(part=1).c9 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col10, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_bigint 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 _col6 _col7 _col8 _col9 _col10 _col11 _col12
+PREHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2 vectorized
+ File Output Operator [FS_8]
+ Select Operator [SEL_7] (rows=6 width=429)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ <-Map 1 [SIMPLE_EDGE] vectorized
+ SHUFFLE [RS_6]
+ Select Operator [SEL_5] (rows=6 width=429)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+ TableScan [TS_0] (rows=6 width=429)
+ default@part_change_various_various_bigint,part_change_various_various_bigint,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","c11","b"]
+
+PREHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Input: default@part_change_various_various_bigint@part=1
+PREHOOK: Input: default@part_change_various_various_bigint@part=2
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,part,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,b from part_change_various_various_bigint order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Input: default@part_change_various_various_bigint@part=1
+POSTHOOK: Input: default@part_change_various_various_bigint@part=2
+#### A masked pattern was here ####
+insert_num part c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 b
+1 1 1 NULL NULL 3244222 -29 470614135 470614135 -2999 -2999 -2999 -62018170411 original
+2 1 1 100 NULL NULL -3651 46114 46114 NULL NULL NULL 1171027049 original
+3 1 0 72 NULL -93222 30 -66475 -66475 1 1 1 134416490068 original
+4 1 1 -90 NULL 3289094 46114 9250340 9250340 NULL NULL NULL 1021033788 original
+5 2 5573199346255528403 71 151775655 1 131 -60 6275638713485623898 -230 -695025 519542222 -29 new
+6 1 -164341325 9043162437544575070 -126 -6566204574741299000 91 113 -28 -63 0 3244222 -90 new
+PREHOOK: query: drop table part_change_various_various_bigint
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@part_change_various_various_bigint
+PREHOOK: Output: default@part_change_various_various_bigint
+POSTHOOK: query: drop table part_change_various_various_bigint
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@part_change_various_various_bigint
+POSTHOOK: Output: default@part_change_various_various_bigint
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@part_change_various_various_float
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for Various --> Various: (BOOLEAN, TINYINT, SMALLINT, INT, LONG, DOUBLE, DECIMAL, STRING, CHAR, VARCHAR, TIMESTAMP) --> FLOAT
+--
+CREATE TABLE part_change_various_various_float(insert_num int, c1 BOOLEAN, c2 TINYINT, c3 SMALLINT, c4 INT, c5 BIGINT, c6 DOUBLE, c7 DECIMAL(38,18), c8 STRING, c9 CHAR(25), c10 VARCHAR(25), c11 TIMESTAMP, b STRING) PARTITIONED BY(part INT)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@part_change_various_various_float
+PREHOOK: query: insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@part_change_various_various_float@part=1
+POSTHOOK: query: insert into table part_change_various_various_float partition(part=1)
+ values(1, -2999, 200, 72909, 3244222, -29.0764, 470614135, 470614135, '-2999', '-2999', '-2999', '0004-09-22 18:26:29.519542222', 'original'),
+ (2, 0, 100, 483777, -23866739993, -3651.672121, 46114.284799488, 46114.284799488, '', '', '', '2007-02-09 05:17:29.368756876', 'original'),
+ (3, false, 72, 3244222, -93222, 30.774, -66475.561431, -66475.561431, '2402.3', '2402.3', '2402.3', '6229-06-28 02:54:28.970117179', 'original'),
+ (4, 1, -90, 754072151, 3289094, 46114.284799488 ,9250340.75, 9250340.75, '5299', '5299', '5299', '2002-05-10 05:29:48.990818073', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@part_change_various_various_float@part=1
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col13, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c1 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c10 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col11, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c11 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col12, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c2 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c3 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c4 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c5 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c6 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c7 EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col8, type:string, comment:), ]
+POSTHOOK: Lineage: part_change_various_various_float PARTITION(part=1).c8 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col9, type:string, comment:),
<TRUNCATED>
[12/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_part.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_part.q.out
index c5af165..72072b3 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_acidvec_mapwork_part.q.out
@@ -2,814 +2,3448 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true')
+--
+-- 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 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
<TRUNCATED>
[40/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/java/org/apache/hadoop/hive/ql/io/orc/ConvertTreeReaderFactory.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/ConvertTreeReaderFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/ConvertTreeReaderFactory.java
new file mode 100644
index 0000000..74a097e
--- /dev/null
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/ConvertTreeReaderFactory.java
@@ -0,0 +1,3750 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.hive.ql.io.orc;
+
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.nio.charset.StandardCharsets;
+import java.sql.Date;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.hadoop.hive.common.type.HiveDecimal;
+import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.ColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.DoubleColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.TimestampColumnVector;
+import org.apache.hadoop.hive.ql.exec.vector.expressions.StringExpr;
+import org.apache.hadoop.hive.serde2.io.ByteWritable;
+import org.apache.hadoop.hive.serde2.io.DateWritable;
+import org.apache.hadoop.hive.serde2.io.DoubleWritable;
+import org.apache.hadoop.hive.serde2.io.HiveCharWritable;
+import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
+import org.apache.hadoop.hive.serde2.io.HiveVarcharWritable;
+import org.apache.hadoop.hive.serde2.io.ShortWritable;
+import org.apache.hadoop.hive.serde2.io.TimestampWritable;
+import org.apache.hadoop.io.BooleanWritable;
+import org.apache.hadoop.io.BytesWritable;
+import org.apache.hadoop.io.FloatWritable;
+import org.apache.hadoop.io.IntWritable;
+import org.apache.hadoop.io.LongWritable;
+import org.apache.hadoop.io.Text;
+import org.apache.hadoop.io.Writable;
+import org.apache.orc.OrcProto;
+import org.apache.orc.TypeDescription;
+import org.apache.orc.TypeDescription.Category;
+import org.apache.orc.impl.InStream;
+import org.apache.orc.impl.PositionProvider;
+import org.apache.orc.impl.StreamName;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Convert ORC tree readers.
+ */
+public class ConvertTreeReaderFactory extends TreeReaderFactory {
+
+ private static final Logger LOG =
+ LoggerFactory.getLogger(TreeReaderFactory.class);
+
+ /**
+ * Override methods like checkEncoding to pass-thru to the convert TreeReader.
+ */
+ public static class ConvertTreeReader extends TreeReader {
+
+ private TreeReader convertTreeReader;
+
+ ConvertTreeReader(int columnId) throws IOException {
+ super(columnId);
+ }
+
+ private static List<TypeDescription.Category> numericTypeList = new ArrayList<TypeDescription.Category>();
+
+ // The ordering of types here is used to determine which numeric types
+ // are common/convertible to one another. Probably better to rely on the
+ // ordering explicitly defined here than to assume that the enum values
+ // that were arbitrarily assigned in PrimitiveCategory work for our purposes.
+ private static EnumMap<TypeDescription.Category, Integer> numericTypes =
+ new EnumMap<TypeDescription.Category, Integer>(TypeDescription.Category.class);
+
+ static {
+ registerNumericType(TypeDescription.Category.BOOLEAN, 1);
+ registerNumericType(TypeDescription.Category.BYTE, 2);
+ registerNumericType(TypeDescription.Category.SHORT, 3);
+ registerNumericType(TypeDescription.Category.INT, 4);
+ registerNumericType(TypeDescription.Category.LONG, 5);
+ registerNumericType(TypeDescription.Category.FLOAT, 6);
+ registerNumericType(TypeDescription.Category.DOUBLE, 7);
+ registerNumericType(TypeDescription.Category.DECIMAL, 8);
+ }
+
+ private static void registerNumericType(TypeDescription.Category kind, int level) {
+ numericTypeList.add(kind);
+ numericTypes.put(kind, level);
+ }
+
+ protected void setConvertTreeReader(TreeReader convertTreeReader) {
+ this.convertTreeReader = convertTreeReader;
+ }
+
+ protected TreeReader getStringGroupTreeReader(int columnId,
+ TypeDescription fileType) throws IOException {
+ switch (fileType.getCategory()) {
+ case STRING:
+ return new StringTreeReader(columnId);
+ case CHAR:
+ return new CharTreeReader(columnId, fileType.getMaxLength());
+ case VARCHAR:
+ return new VarcharTreeReader(columnId, fileType.getMaxLength());
+ default:
+ throw new RuntimeException("Unexpected type kind " + fileType.getCategory().name());
+ }
+ }
+
+ protected Writable getStringGroupWritable(TypeDescription fileType)
+ throws IOException {
+ switch (fileType.getCategory()) {
+ case STRING:
+ return new Text();
+ case CHAR:
+ return new HiveCharWritable();
+ case VARCHAR:
+ return new HiveVarcharWritable();
+ default:
+ throw new RuntimeException("Unexpected type kind " + fileType.getCategory().name());
+ }
+ }
+
+ protected Writable getStringGroupResultFromString(Object previous,
+ TypeDescription readerType, String string) {
+ switch (readerType.getCategory()) {
+ case STRING:
+ {
+ Text textResult;
+ if (previous == null) {
+ textResult = new Text();
+ } else {
+ textResult = (Text) previous;
+ }
+ textResult.set(string);
+ return textResult;
+ }
+ case CHAR:
+ {
+ HiveCharWritable hiveCharResult;
+ if (previous == null) {
+ hiveCharResult = new HiveCharWritable();
+ } else {
+ hiveCharResult = (HiveCharWritable) previous;
+ }
+ hiveCharResult.set(string, readerType.getMaxLength());
+ return hiveCharResult;
+ }
+ case VARCHAR:
+ {
+ HiveVarcharWritable hiveVarcharResult;
+ if (previous == null) {
+ hiveVarcharResult = new HiveVarcharWritable();
+ } else {
+ hiveVarcharResult = (HiveVarcharWritable) previous;
+ }
+ hiveVarcharResult.set(string, readerType.getMaxLength());
+ return hiveVarcharResult;
+ }
+ default:
+ throw new RuntimeException("Unexpected type kind " + readerType.getCategory().name());
+ }
+ }
+
+ protected void assignStringGroupVectorEntry(BytesColumnVector bytesColVector,
+ int elementNum, TypeDescription readerType, byte[] bytes) {
+ assignStringGroupVectorEntry(bytesColVector,
+ elementNum, readerType, bytes, 0, bytes.length);
+ }
+
+ /*
+ * Assign a BytesColumnVector entry when we have a byte array, start, and
+ * length for the string group which can be (STRING, CHAR, VARCHAR).
+ */
+ protected void assignStringGroupVectorEntry(BytesColumnVector bytesColVector,
+ int elementNum, TypeDescription readerType, byte[] bytes, int start, int length) {
+ switch (readerType.getCategory()) {
+ case STRING:
+ bytesColVector.setVal(elementNum, bytes, start, length);
+ break;
+ case CHAR:
+ {
+ int adjustedDownLen =
+ StringExpr.rightTrimAndTruncate(bytes, start, length, readerType.getMaxLength());
+ bytesColVector.setVal(elementNum, bytes, start, adjustedDownLen);
+ }
+ break;
+ case VARCHAR:
+ {
+ int adjustedDownLen =
+ StringExpr.truncate(bytes, start, length, readerType.getMaxLength());
+ bytesColVector.setVal(elementNum, bytes, start, adjustedDownLen);
+ }
+ break;
+ default:
+ throw new RuntimeException("Unexpected type kind " + readerType.getCategory().name());
+ }
+ }
+
+ protected void convertStringGroupVectorElement(BytesColumnVector bytesColVector,
+ int elementNum, TypeDescription readerType) {
+ switch (readerType.getCategory()) {
+ case STRING:
+ // No conversion needed.
+ break;
+ case CHAR:
+ {
+ int length = bytesColVector.length[elementNum];
+ int adjustedDownLen = StringExpr
+ .rightTrimAndTruncate(bytesColVector.vector[elementNum],
+ bytesColVector.start[elementNum], length,
+ readerType.getMaxLength());
+ if (adjustedDownLen < length) {
+ bytesColVector.length[elementNum] = adjustedDownLen;
+ }
+ }
+ break;
+ case VARCHAR:
+ {
+ int length = bytesColVector.length[elementNum];
+ int adjustedDownLen = StringExpr
+ .truncate(bytesColVector.vector[elementNum],
+ bytesColVector.start[elementNum], length,
+ readerType.getMaxLength());
+ if (adjustedDownLen < length) {
+ bytesColVector.length[elementNum] = adjustedDownLen;
+ }
+ }
+ break;
+ default:
+ throw new RuntimeException("Unexpected type kind " + readerType.getCategory().name());
+ }
+ }
+
+ private boolean isParseError;
+
+ /*
+ * We do this because we want the various parse methods return a primitive.
+ *
+ * @return true if there was a parse error in the last call to
+ * parseLongFromString, etc.
+ */
+ protected boolean getIsParseError() {
+ return isParseError;
+ }
+
+ protected long parseLongFromString(String string) {
+ try {
+ long longValue = Long.parseLong(string);
+ isParseError = false;
+ return longValue;
+ } catch (NumberFormatException e) {
+ isParseError = true;
+ return 0;
+ }
+ }
+
+ protected float parseFloatFromString(String string) {
+ try {
+ float floatValue = Float.parseFloat(string);
+ isParseError = false;
+ return floatValue;
+ } catch (NumberFormatException e) {
+ isParseError = true;
+ return Float.NaN;
+ }
+ }
+
+ protected double parseDoubleFromString(String string) {
+ try {
+ double value = Double.parseDouble(string);
+ isParseError = false;
+ return value;
+ } catch (NumberFormatException e) {
+ isParseError = true;
+ return Double.NaN;
+ }
+ }
+
+ /**
+ * @param string
+ * @return the HiveDecimal parsed, or null if there was a parse error.
+ */
+ protected HiveDecimal parseDecimalFromString(String string) {
+ try {
+ HiveDecimal value = HiveDecimal.create(string);
+ return value;
+ } catch (NumberFormatException e) {
+ return null;
+ }
+ }
+
+ /**
+ * @param string
+ * @return the Timestamp parsed, or null if there was a parse error.
+ */
+ protected Timestamp parseTimestampFromString(String string) {
+ try {
+ Timestamp value = Timestamp.valueOf(string);
+ return value;
+ } catch (IllegalArgumentException e) {
+ return null;
+ }
+ }
+
+ /**
+ * @param string
+ * @return the Date parsed, or null if there was a parse error.
+ */
+ protected Date parseDateFromString(String string) {
+ try {
+ Date value = Date.valueOf(string);
+ return value;
+ } catch (IllegalArgumentException e) {
+ return null;
+ }
+ }
+
+ protected String stringFromStringGroupTreeReader(
+ TreeReader stringGroupTreeReader, Writable writable,
+ TypeDescription fileType) throws IOException {
+ switch (fileType.getCategory()) {
+ case STRING:
+ {
+ Text readTextResult =
+ (Text) ((StringTreeReader) stringGroupTreeReader).next(writable);
+ if (readTextResult == null) {
+ return null;
+ }
+ return readTextResult.toString();
+ }
+ case CHAR:
+ {
+ HiveCharWritable readHiveCharResult =
+ (HiveCharWritable) ((CharTreeReader) stringGroupTreeReader).next(writable);
+ if (readHiveCharResult == null) {
+ return null;
+ }
+ return readHiveCharResult.getStrippedValue().toString();
+ }
+ case VARCHAR:
+ {
+ HiveVarcharWritable readHiveVarcharResult =
+ (HiveVarcharWritable) ((VarcharTreeReader) stringGroupTreeReader).next(writable);
+ if (readHiveVarcharResult == null) {
+ return null;
+ }
+ return readHiveVarcharResult.toString();
+ }
+ default:
+ throw new RuntimeException("Unexpected type kind " + fileType.getCategory().name());
+ }
+ }
+
+ protected String stringFromBytesColumnVectorEntry(
+ BytesColumnVector bytesColVector, int elementNum) {
+ String string;
+
+ string = new String(
+ bytesColVector.vector[elementNum],
+ bytesColVector.start[elementNum], bytesColVector.length[elementNum],
+ StandardCharsets.UTF_8);
+
+ return string;
+ }
+
+ @Override
+ void checkEncoding(OrcProto.ColumnEncoding encoding) throws IOException {
+ // Pass-thru.
+ convertTreeReader.checkEncoding(encoding);
+ }
+
+ @Override
+ void startStripe(Map<StreamName, InStream> streams,
+ OrcProto.StripeFooter stripeFooter
+ ) throws IOException {
+ // Pass-thru.
+ convertTreeReader.startStripe(streams, stripeFooter);
+ }
+
+ @Override
+ void seek(PositionProvider[] index) throws IOException {
+ // Pass-thru.
+ convertTreeReader.seek(index);
+ }
+
+ @Override
+ public void seek(PositionProvider index) throws IOException {
+ // Pass-thru.
+ convertTreeReader.seek(index);
+ }
+
+ @Override
+ void skipRows(long items) throws IOException {
+ // Pass-thru.
+ convertTreeReader.skipRows(items);
+ }
+
+ /**
+ * Override this to use convertVector.
+ * Source and result are member variables in the subclass with the right
+ * type.
+ * @param elementNum
+ * @throws IOException
+ */
+ // Override this to use convertVector.
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ throw new RuntimeException("Expected this method to be overriden");
+ }
+
+ // Common code used by the conversion.
+ public void convertVector(ColumnVector fromColVector,
+ ColumnVector resultColVector, final int batchSize) throws IOException {
+
+ resultColVector.reset();
+ if (fromColVector.isRepeating) {
+ resultColVector.isRepeating = true;
+ if (fromColVector.noNulls || !fromColVector.isNull[0]) {
+ setConvertVectorElement(0);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[0] = true;
+ }
+ } else if (fromColVector.noNulls){
+ for (int i = 0; i < batchSize; i++) {
+ setConvertVectorElement(i);
+ }
+ } else {
+ for (int i = 0; i < batchSize; i++) {
+ if (!fromColVector.isNull[i]) {
+ setConvertVectorElement(i);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[i] = true;
+ }
+ }
+ }
+ }
+
+ public long downCastAnyInteger(long input, TypeDescription readerType) {
+ switch (readerType.getCategory()) {
+ case BOOLEAN:
+ return input == 0 ? 0 : 1;
+ case BYTE:
+ return (byte) input;
+ case SHORT:
+ return (short) input;
+ case INT:
+ return (int) input;
+ case LONG:
+ return input;
+ default:
+ throw new RuntimeException("Unexpected type kind " + readerType.getCategory().name());
+ }
+ }
+
+ protected Writable anyIntegerWritable(long longValue, Object previous,
+ TypeDescription readerType) {
+ switch (readerType.getCategory()) {
+ case BOOLEAN:
+ {
+ BooleanWritable booleanResult;
+ if (previous == null) {
+ booleanResult = new BooleanWritable();
+ } else {
+ booleanResult = (BooleanWritable) previous;
+ }
+ booleanResult.set(longValue != 0);
+ return booleanResult;
+ }
+ case BYTE:
+ {
+ ByteWritable byteResult;
+ if (previous == null) {
+ byteResult = new ByteWritable();
+ } else {
+ byteResult = (ByteWritable) previous;
+ }
+ byteResult.set((byte) longValue);
+ return byteResult;
+ }
+ case SHORT:
+ {
+ ShortWritable shortResult;
+ if (previous == null) {
+ shortResult = new ShortWritable();
+ } else {
+ shortResult = (ShortWritable) previous;
+ }
+ shortResult.set((short) longValue);
+ return shortResult;
+ }
+ case INT:
+ {
+ IntWritable intResult;
+ if (previous == null) {
+ intResult = new IntWritable();
+ } else {
+ intResult = (IntWritable) previous;
+ }
+ intResult.set((int) longValue);
+ return intResult;
+ }
+ case LONG:
+ {
+ LongWritable longResult;
+ if (previous == null) {
+ longResult = new LongWritable();
+ } else {
+ longResult = (LongWritable) previous;
+ }
+ longResult.set(longValue);
+ return longResult;
+ }
+ default:
+ throw new RuntimeException("Unexpected type kind " + readerType.getCategory().name());
+ }
+ }
+
+ protected boolean integerDownCastNeeded(TypeDescription fileType, TypeDescription readerType) {
+ Integer fileLevel = numericTypes.get(fileType.getCategory());
+ Integer schemaLevel = numericTypes.get(readerType.getCategory());
+ return (schemaLevel.intValue() < fileLevel.intValue());
+ }
+ }
+
+ public static class AnyIntegerTreeReader extends ConvertTreeReader {
+
+ private TypeDescription.Category fileTypeCategory;
+ private TreeReader anyIntegerTreeReader;
+
+ private long longValue;
+
+ AnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.fileTypeCategory = fileType.getCategory();
+ switch (fileTypeCategory) {
+ case BOOLEAN:
+ anyIntegerTreeReader = new BooleanTreeReader(columnId);
+ break;
+ case BYTE:
+ anyIntegerTreeReader = new ByteTreeReader(columnId);
+ break;
+ case SHORT:
+ anyIntegerTreeReader = new ShortTreeReader(columnId);
+ break;
+ case INT:
+ anyIntegerTreeReader = new IntTreeReader(columnId);
+ break;
+ case LONG:
+ anyIntegerTreeReader = new LongTreeReader(columnId, skipCorrupt);
+ break;
+ default:
+ throw new RuntimeException("Unexpected type kind " + fileType.getCategory().name());
+ }
+ setConvertTreeReader(anyIntegerTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ throw new RuntimeException("Call read() and getLong instead");
+ }
+
+ protected boolean read() throws IOException {
+ anyIntegerTreeReader.readValuePresent();
+ if (!anyIntegerTreeReader.valuePresent) {
+ return false;
+ }
+ switch (fileTypeCategory) {
+ case BOOLEAN:
+ longValue = ((BooleanTreeReader) anyIntegerTreeReader).reader.next();
+ break;
+ case BYTE:
+ longValue = ((ByteTreeReader) anyIntegerTreeReader).reader.next();
+ break;
+ case SHORT:
+ longValue = ((ShortTreeReader) anyIntegerTreeReader).reader.next();
+ break;
+ case INT:
+ longValue = ((IntTreeReader) anyIntegerTreeReader).reader.next();
+ break;
+ case LONG:
+ longValue = ((LongTreeReader) anyIntegerTreeReader).reader.next();
+ break;
+ default:
+ throw new RuntimeException("Unexpected type kind " + fileTypeCategory.name());
+ }
+ return true;
+ }
+
+ protected long getLong() throws IOException {
+ return longValue;
+ }
+
+ protected String getString(long longValue) {
+ if (fileTypeCategory == TypeDescription.Category.BOOLEAN) {
+ return longValue == 0 ? "FALSE" : "TRUE";
+ } else {
+ return Long.toString(longValue);
+ }
+ }
+
+ protected String getString() {
+ return getString(longValue);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ anyIntegerTreeReader.nextVector(previousVector, isNull, batchSize);
+ }
+ }
+
+ public static class AnyIntegerFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private final TypeDescription readerType;
+ private final boolean downCastNeeded;
+
+ AnyIntegerFromAnyIntegerTreeReader(int columnId, TypeDescription fileType, TypeDescription readerType, boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ anyIntegerAsLongTreeReader = new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ downCastNeeded = integerDownCastNeeded(fileType, readerType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ Writable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ long longValue = anyIntegerAsLongTreeReader.getLong();
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ return result;
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ anyIntegerAsLongTreeReader.nextVector(previousVector, isNull, batchSize);
+ LongColumnVector resultColVector = (LongColumnVector) previousVector;
+ if (downCastNeeded) {
+ long[] resultVector = resultColVector.vector;
+ if (resultColVector.isRepeating) {
+ if (resultColVector.noNulls || !resultColVector.isNull[0]) {
+ resultVector[0] = downCastAnyInteger(resultVector[0], readerType);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[0] = true;
+ }
+ } else if (resultColVector.noNulls){
+ for (int i = 0; i < batchSize; i++) {
+ resultVector[i] = downCastAnyInteger(resultVector[i], readerType);
+ }
+ } else {
+ for (int i = 0; i < batchSize; i++) {
+ if (!resultColVector.isNull[i]) {
+ resultVector[i] = downCastAnyInteger(resultVector[i], readerType);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[i] = true;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ public static class AnyIntegerFromFloatTreeReader extends ConvertTreeReader {
+
+ private FloatTreeReader floatTreeReader;
+
+ private final TypeDescription readerType;
+ private FloatWritable floatResult;
+ private DoubleColumnVector doubleColVector;
+ private LongColumnVector longColVector;
+
+ AnyIntegerFromFloatTreeReader(int columnId, TypeDescription readerType)
+ throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ floatTreeReader = new FloatTreeReader(columnId);
+ setConvertTreeReader(floatTreeReader);
+ floatResult = new FloatWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ FloatWritable readfloatResult =
+ (FloatWritable) floatTreeReader.next(floatResult);
+
+ Writable result = null;
+ if (readfloatResult != null) {
+ long longValue = (long) readfloatResult.get();
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ float floatValue = (float) doubleColVector.vector[elementNum];
+ longColVector.vector[elementNum] =
+ downCastAnyInteger(
+ (long) floatValue, readerType);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ longColVector = (LongColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ floatTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, longColVector, batchSize);
+ }
+ }
+
+ public static class AnyIntegerFromDoubleTreeReader extends ConvertTreeReader {
+
+ private DoubleTreeReader doubleTreeReader;
+
+ private final TypeDescription readerType;
+ private DoubleWritable doubleResult;
+ private DoubleColumnVector doubleColVector;
+ private LongColumnVector longColVector;
+
+ AnyIntegerFromDoubleTreeReader(int columnId, TypeDescription readerType)
+ throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ doubleTreeReader = new DoubleTreeReader(columnId);
+ setConvertTreeReader(doubleTreeReader);
+ doubleResult = new DoubleWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ DoubleWritable readDoubleResult =
+ (DoubleWritable) doubleTreeReader.next(doubleResult);
+
+ Writable result = null;
+ if (readDoubleResult != null) {
+ long longValue = (long) readDoubleResult.get();
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ longColVector.vector[elementNum] =
+ downCastAnyInteger(
+ (long) doubleColVector.vector[elementNum], readerType);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ longColVector = (LongColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ doubleTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, longColVector, batchSize);
+ }
+ }
+
+ public static class AnyIntegerFromDecimalTreeReader extends ConvertTreeReader {
+
+ private DecimalTreeReader decimalTreeReader;
+
+ private final int precision;
+ private final int scale;
+ private final TypeDescription readerType;
+ private HiveDecimalWritable hiveDecimalResult;
+ private DecimalColumnVector decimalColVector;
+ private LongColumnVector longColVector;
+
+ AnyIntegerFromDecimalTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.precision = fileType.getPrecision();
+ this.scale = fileType.getScale();
+ this.readerType = readerType;
+ decimalTreeReader = new DecimalTreeReader(columnId, precision, scale);
+ setConvertTreeReader(decimalTreeReader);
+ hiveDecimalResult = new HiveDecimalWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ HiveDecimalWritable readHiveDecimalResult =
+ (HiveDecimalWritable) decimalTreeReader.next(hiveDecimalResult);
+
+ Writable result = null;
+ if (readHiveDecimalResult != null) {
+ long longValue = readHiveDecimalResult.getHiveDecimal().longValue();
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ longColVector.vector[elementNum] =
+ downCastAnyInteger(
+ decimalColVector.vector[elementNum].getHiveDecimal().longValue(),
+ readerType);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (decimalColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ decimalColVector = new DecimalColumnVector(precision, scale);
+ longColVector = (LongColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ decimalTreeReader.nextVector(decimalColVector, isNull, batchSize);
+
+ convertVector(decimalColVector, longColVector, batchSize);
+ }
+ }
+
+ public static class AnyIntegerFromStringGroupTreeReader extends ConvertTreeReader {
+
+ private TreeReader stringGroupTreeReader;
+
+ private final TypeDescription fileType;
+ private final TypeDescription readerType;
+ private Writable writable;
+ private BytesColumnVector bytesColVector;
+ private LongColumnVector longColVector;
+
+ AnyIntegerFromStringGroupTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ this.readerType = readerType;
+ stringGroupTreeReader = getStringGroupTreeReader(columnId, fileType);
+ setConvertTreeReader(stringGroupTreeReader);
+ writable = getStringGroupWritable(fileType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ String stringValue = stringFromStringGroupTreeReader(
+ stringGroupTreeReader, writable, fileType);
+
+ Writable result = null;
+ if (stringValue != null) {
+ long longValue = parseLongFromString(stringValue);
+ if (!getIsParseError()) {
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ String string = stringFromBytesColumnVectorEntry(bytesColVector, elementNum);
+ long longValue = parseLongFromString(string);
+ if (!getIsParseError()) {
+ longColVector.vector[elementNum] =
+ downCastAnyInteger(longValue, readerType);
+ } else {
+ longColVector.noNulls = false;
+ longColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (bytesColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ bytesColVector = new BytesColumnVector();
+ longColVector = (LongColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ stringGroupTreeReader.nextVector(bytesColVector, isNull, batchSize);
+
+ convertVector(bytesColVector, longColVector, batchSize);
+ }
+ }
+
+ public static class AnyIntegerFromTimestampTreeReader extends ConvertTreeReader {
+
+ private TimestampTreeReader timestampTreeReader;
+
+ private final TypeDescription readerType;
+ private TimestampWritable timestampResult;
+ private TimestampColumnVector timestampColVector;
+ private LongColumnVector longColVector;
+
+ AnyIntegerFromTimestampTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ timestampTreeReader = new TimestampTreeReader(columnId, skipCorrupt);
+ setConvertTreeReader(timestampTreeReader);
+ timestampResult = new TimestampWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ TimestampWritable readHiveTimestampResult =
+ (TimestampWritable) timestampTreeReader.next(timestampResult);
+
+ Writable result = null;
+ if (readHiveTimestampResult != null) {
+ // Use TimestampWritable's getSeconds.
+ long longValue = readHiveTimestampResult.getSeconds();
+ result = anyIntegerWritable(longValue, previous, readerType);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ timestampResult.set(timestampColVector.asScratchTimestamp(elementNum));
+ // Use TimestampWritable's getSeconds.
+ long longValue = timestampResult.getSeconds();
+ longColVector.vector[elementNum] =
+ downCastAnyInteger(longValue, readerType);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (timestampColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ timestampColVector = new TimestampColumnVector();
+ longColVector = (LongColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ timestampTreeReader.nextVector(timestampColVector, isNull, batchSize);
+
+ convertVector(timestampColVector, longColVector, batchSize);
+ }
+ }
+
+ public static class FloatFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private LongColumnVector longColVector;
+ private DoubleColumnVector doubleColVector;
+
+ FloatFromAnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ anyIntegerAsLongTreeReader =
+ new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ FloatWritable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ long longValue = anyIntegerAsLongTreeReader.getLong();
+ float floatValue = (float) longValue;
+ if (!Float.isNaN(floatValue)){
+ if (previous == null) {
+ result = new FloatWritable();
+ } else {
+ result = (FloatWritable) previous;
+ }
+ result.set(floatValue);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ float floatValue = (float) longColVector.vector[elementNum];
+ if (!Float.isNaN(floatValue)) {
+ doubleColVector.vector[elementNum] = floatValue;
+ } else {
+ doubleColVector.vector[elementNum] = Double.NaN;
+ doubleColVector.noNulls = false;
+ doubleColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ anyIntegerAsLongTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class FloatFromDoubleTreeReader extends ConvertTreeReader {
+
+ private DoubleTreeReader doubleTreeReader;
+
+ private DoubleWritable doubleResult;
+
+ FloatFromDoubleTreeReader(int columnId) throws IOException {
+ super(columnId);
+ doubleTreeReader = new DoubleTreeReader(columnId);
+ setConvertTreeReader(doubleTreeReader);
+ doubleResult = new DoubleWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ DoubleWritable readDoubleResult =
+ (DoubleWritable) doubleTreeReader.next(doubleResult);
+
+ FloatWritable result = null;
+ if (readDoubleResult != null) {
+ if (previous == null) {
+ result = new FloatWritable();
+ } else {
+ result = (FloatWritable) previous;
+ }
+ result.set((float) readDoubleResult.get());
+ }
+ return result;
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ doubleTreeReader.nextVector(previousVector, isNull, batchSize);
+
+ DoubleColumnVector resultColVector = (DoubleColumnVector) previousVector;
+ double[] resultVector = resultColVector.vector;
+ if (resultColVector.isRepeating) {
+ if (resultColVector.noNulls || !resultColVector.isNull[0]) {
+ resultVector[0] = (float) resultVector[0];
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[0] = true;
+ }
+ } else if (resultColVector.noNulls){
+ for (int i = 0; i < batchSize; i++) {
+ resultVector[i] = (float) resultVector[i];
+ }
+ } else {
+ for (int i = 0; i < batchSize; i++) {
+ if (!resultColVector.isNull[i]) {
+ resultVector[i] = (float) resultVector[i];
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[i] = true;
+ }
+ }
+ }
+ }
+ }
+
+ public static class FloatFromDecimalTreeReader extends ConvertTreeReader {
+
+ private DecimalTreeReader decimalTreeReader;
+
+ private final int precision;
+ private final int scale;
+ private final TypeDescription readerType;
+ private HiveDecimalWritable hiveDecimalResult;
+ private DecimalColumnVector decimalColVector;
+ private DoubleColumnVector doubleColVector;
+
+ FloatFromDecimalTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.precision = fileType.getPrecision();
+ this.scale = fileType.getScale();
+ this.readerType = readerType;
+ decimalTreeReader = new DecimalTreeReader(columnId, precision, scale);
+ setConvertTreeReader(decimalTreeReader);
+ hiveDecimalResult = new HiveDecimalWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ HiveDecimalWritable readHiveDecimalResult =
+ (HiveDecimalWritable) decimalTreeReader.next(hiveDecimalResult);
+
+ FloatWritable result = null;
+ if (readHiveDecimalResult != null) {
+ double doubleValue = readHiveDecimalResult.getHiveDecimal().doubleValue();
+ if (previous == null) {
+ result = new FloatWritable();
+ } else {
+ result = (FloatWritable) previous;
+ }
+ result.set((float) doubleValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ doubleColVector.vector[elementNum] =
+ (float) decimalColVector.vector[elementNum].getHiveDecimal().doubleValue();
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (decimalColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ decimalColVector = new DecimalColumnVector(precision, scale);
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ decimalTreeReader.nextVector(decimalColVector, isNull, batchSize);
+
+ convertVector(decimalColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class FloatFromStringGroupTreeReader extends ConvertTreeReader {
+
+ private TreeReader stringGroupTreeReader;
+
+ private final TypeDescription fileType;
+ private Writable writable;
+ private BytesColumnVector bytesColVector;
+ private DoubleColumnVector doubleColVector;
+
+ FloatFromStringGroupTreeReader(int columnId, TypeDescription fileType)
+ throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ stringGroupTreeReader = getStringGroupTreeReader(columnId, fileType);
+ setConvertTreeReader(stringGroupTreeReader);
+ writable = getStringGroupWritable(fileType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ String stringValue = stringFromStringGroupTreeReader(
+ stringGroupTreeReader, writable, fileType);
+
+ FloatWritable result = null;
+ if (stringValue != null) {
+ float floatValue = parseFloatFromString(stringValue);
+ if (!getIsParseError()) {
+ if (previous == null) {
+ result = new FloatWritable();
+ } else {
+ result = (FloatWritable) previous;
+ }
+ result.set(floatValue);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ String string = stringFromBytesColumnVectorEntry(bytesColVector, elementNum);
+ float floatValue = parseFloatFromString(string);
+ if (!getIsParseError()) {
+ doubleColVector.vector[elementNum] = floatValue;
+ } else {
+ doubleColVector.vector[elementNum] = Double.NaN;
+ doubleColVector.noNulls = false;
+ doubleColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (bytesColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ bytesColVector = new BytesColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ stringGroupTreeReader.nextVector(bytesColVector, isNull, batchSize);
+
+ convertVector(bytesColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class FloatFromTimestampTreeReader extends ConvertTreeReader {
+
+ private TimestampTreeReader timestampTreeReader;
+
+ private final TypeDescription readerType;
+ private TimestampWritable timestampResult;
+ private TimestampColumnVector timestampColVector;
+ private DoubleColumnVector doubleColVector;
+
+ FloatFromTimestampTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ timestampTreeReader = new TimestampTreeReader(columnId, skipCorrupt);
+ setConvertTreeReader(timestampTreeReader);
+ timestampResult = new TimestampWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ TimestampWritable readTimestampResult =
+ (TimestampWritable) timestampTreeReader.next(timestampResult);
+
+ FloatWritable result = null;
+ if (readTimestampResult != null) {
+ double doubleValue = readTimestampResult.getDouble();
+ if (previous == null) {
+ result = new FloatWritable();
+ } else {
+ result = (FloatWritable) previous;
+ }
+ result.set((float) doubleValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ timestampResult.set(timestampColVector.asScratchTimestamp(elementNum));
+ doubleColVector.vector[elementNum] = (float) timestampResult.getDouble();
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (timestampColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ timestampColVector = new TimestampColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ timestampTreeReader.nextVector(timestampColVector, isNull, batchSize);
+
+ convertVector(timestampColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class DoubleFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private LongColumnVector longColVector;
+ private DoubleColumnVector doubleColVector;
+
+ DoubleFromAnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ anyIntegerAsLongTreeReader =
+ new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ DoubleWritable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ long longValue = anyIntegerAsLongTreeReader.getLong();
+ double doubleValue = (double) longValue;
+ if (!Double.isNaN(doubleValue)) {
+ if (previous == null) {
+ result = new DoubleWritable();
+ } else {
+ result = (DoubleWritable) previous;
+ }
+ result.set(doubleValue);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+
+ double doubleValue = (double) longColVector.vector[elementNum];
+ if (!Double.isNaN(doubleValue)) {
+ doubleColVector.vector[elementNum] = doubleValue;
+ } else {
+ doubleColVector.vector[elementNum] = Double.NaN;
+ doubleColVector.noNulls = false;
+ doubleColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ anyIntegerAsLongTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class DoubleFromFloatTreeReader extends ConvertTreeReader {
+
+ private FloatTreeReader floatTreeReader;
+
+ private FloatWritable floatResult;
+
+ DoubleFromFloatTreeReader(int columnId) throws IOException {
+ super(columnId);
+ floatTreeReader = new FloatTreeReader(columnId);
+ setConvertTreeReader(floatTreeReader);
+ floatResult = new FloatWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ FloatWritable readFloatResult =
+ (FloatWritable) floatTreeReader.next(floatResult);
+
+ DoubleWritable result = null;
+ if (readFloatResult != null) {
+ if (previous == null) {
+ result = new DoubleWritable();
+ } else {
+ result = (DoubleWritable) previous;
+ }
+ result.set(readFloatResult.get());
+ }
+ return result;
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ // The DoubleColumnVector produced by FloatTreeReader is what we want.
+ floatTreeReader.nextVector(previousVector, isNull, batchSize);
+ }
+ }
+
+ public static class DoubleFromDecimalTreeReader extends ConvertTreeReader {
+
+ private DecimalTreeReader decimalTreeReader;
+
+ private final int precision;
+ private final int scale;
+ private final TypeDescription readerType;
+ private HiveDecimalWritable hiveDecimalResult;
+ private DecimalColumnVector decimalColVector;
+ private DoubleColumnVector doubleColVector;
+
+ DoubleFromDecimalTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.precision = fileType.getPrecision();
+ this.scale = fileType.getScale();
+ this.readerType = readerType;
+ decimalTreeReader = new DecimalTreeReader(columnId, precision, scale);
+ setConvertTreeReader(decimalTreeReader);
+ hiveDecimalResult = new HiveDecimalWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ HiveDecimalWritable readHiveDecimalResult =
+ (HiveDecimalWritable) decimalTreeReader.next(hiveDecimalResult);
+
+ DoubleWritable result = null;
+ if (readHiveDecimalResult != null) {
+ double doubleValue = readHiveDecimalResult.getHiveDecimal().doubleValue();
+ if (previous == null) {
+ result = new DoubleWritable();
+ } else {
+ result = (DoubleWritable) previous;
+ }
+ result.set(doubleValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ doubleColVector.vector[elementNum] =
+ decimalColVector.vector[elementNum].getHiveDecimal().doubleValue();
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (decimalColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ decimalColVector = new DecimalColumnVector(precision, scale);
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ decimalTreeReader.nextVector(decimalColVector, isNull, batchSize);
+
+ convertVector(decimalColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class DoubleFromStringGroupTreeReader extends ConvertTreeReader {
+
+ private TreeReader stringGroupTreeReader;
+
+ private final TypeDescription fileType;
+ private Writable writable;
+ private BytesColumnVector bytesColVector;
+ private DoubleColumnVector doubleColVector;
+
+ DoubleFromStringGroupTreeReader(int columnId, TypeDescription fileType)
+ throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ stringGroupTreeReader = getStringGroupTreeReader(columnId, fileType);
+ setConvertTreeReader(stringGroupTreeReader);
+ writable = getStringGroupWritable(fileType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ String stringValue = stringFromStringGroupTreeReader(
+ stringGroupTreeReader, writable, fileType);
+
+ DoubleWritable result = null;
+ if (stringValue != null) {
+ double doubleValue = parseDoubleFromString(stringValue);
+ if (!getIsParseError()) {
+ if (previous == null) {
+ result = new DoubleWritable();
+ } else {
+ result = (DoubleWritable) previous;
+ }
+ result.set(doubleValue);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ String string = stringFromBytesColumnVectorEntry(bytesColVector, elementNum);
+ double doubleValue = parseDoubleFromString(string);
+ if (!getIsParseError()) {
+ doubleColVector.vector[elementNum] = doubleValue;
+ } else {
+ doubleColVector.noNulls = false;
+ doubleColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (bytesColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ bytesColVector = new BytesColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ stringGroupTreeReader.nextVector(bytesColVector, isNull, batchSize);
+
+ convertVector(bytesColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class DoubleFromTimestampTreeReader extends ConvertTreeReader {
+
+ private TimestampTreeReader timestampTreeReader;
+
+ private final TypeDescription readerType;
+ private TimestampWritable timestampResult;
+ private TimestampColumnVector timestampColVector;
+ private DoubleColumnVector doubleColVector;
+
+ DoubleFromTimestampTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ timestampTreeReader = new TimestampTreeReader(columnId, skipCorrupt);
+ setConvertTreeReader(timestampTreeReader);
+ timestampResult = new TimestampWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ TimestampWritable readTimestampResult =
+ (TimestampWritable) timestampTreeReader.next(timestampResult);
+
+ DoubleWritable result = null;
+ if (readTimestampResult != null) {
+ double doubleValue = readTimestampResult.getDouble();
+ if (previous == null) {
+ result = new DoubleWritable();
+ } else {
+ result = (DoubleWritable) previous;
+ }
+ result.set(doubleValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ timestampResult.set(timestampColVector.asScratchTimestamp(elementNum));
+ doubleColVector.vector[elementNum] = timestampResult.getDouble();
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (timestampColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ timestampColVector = new TimestampColumnVector();
+ doubleColVector = (DoubleColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ timestampTreeReader.nextVector(timestampColVector, isNull, batchSize);
+
+ convertVector(timestampColVector, doubleColVector, batchSize);
+ }
+ }
+
+ public static class DecimalFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private int precision;
+ private int scale;
+ private LongColumnVector longColVector;
+ private DecimalColumnVector decimalColVector;
+
+ DecimalFromAnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType, boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.precision = readerType.getPrecision();
+ this.scale = readerType.getScale();
+ anyIntegerAsLongTreeReader =
+ new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ HiveDecimalWritable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ long longValue = anyIntegerAsLongTreeReader.getLong();
+ result = new HiveDecimalWritable(longValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ long longValue = longColVector.vector[elementNum];
+ HiveDecimalWritable hiveDecimalWritable =
+ new HiveDecimalWritable(longValue);
+ decimalColVector.set(elementNum, hiveDecimalWritable);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ decimalColVector = (DecimalColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ anyIntegerAsLongTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, decimalColVector, batchSize);
+ }
+ }
+
+ public static class DecimalFromFloatTreeReader extends ConvertTreeReader {
+
+ private FloatTreeReader floatTreeReader;
+
+ private int precision;
+ private int scale;
+ private FloatWritable floatResult;
+ private DoubleColumnVector doubleColVector;
+ private DecimalColumnVector decimalColVector;
+
+ DecimalFromFloatTreeReader(int columnId, TypeDescription readerType)
+ throws IOException {
+ super(columnId);
+ this.precision = readerType.getPrecision();
+ this.scale = readerType.getScale();
+ floatTreeReader = new FloatTreeReader(columnId);
+ setConvertTreeReader(floatTreeReader);
+ floatResult = new FloatWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ FloatWritable readFloatResult =
+ (FloatWritable) floatTreeReader.next(floatResult);
+
+ HiveDecimalWritable result = null;
+ if (readFloatResult != null) {
+ HiveDecimal value =
+ HiveDecimal.create(Float.toString(readFloatResult.get()));
+ if (value != null) {
+ if (previous == null) {
+ result = new HiveDecimalWritable();
+ } else {
+ result = (HiveDecimalWritable) previous;
+ }
+ result.set(value);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ float floatValue = (float) doubleColVector.vector[elementNum];
+ if (!Float.isNaN(floatValue)) {
+ HiveDecimal value =
+ HiveDecimal.create(Float.toString(floatValue));
+ if (value != null) {
+ decimalColVector.set(elementNum, value);
+ } else {
+ decimalColVector.noNulls = false;
+ decimalColVector.isNull[elementNum] = true;
+ }
+ } else {
+ decimalColVector.noNulls = false;
+ decimalColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ decimalColVector = (DecimalColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ floatTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, decimalColVector, batchSize);
+ }
+ }
+
+ public static class DecimalFromDoubleTreeReader extends ConvertTreeReader {
+
+ private DoubleTreeReader doubleTreeReader;
+
+ private int precision;
+ private int scale;
+ private DoubleWritable doubleResult;
+ private DoubleColumnVector doubleColVector;
+ private DecimalColumnVector decimalColVector;
+
+ DecimalFromDoubleTreeReader(int columnId, TypeDescription readerType)
+ throws IOException {
+ super(columnId);
+ this.precision = readerType.getPrecision();
+ this.scale = readerType.getScale();
+ doubleTreeReader = new DoubleTreeReader(columnId);
+ setConvertTreeReader(doubleTreeReader);
+ doubleResult = new DoubleWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ DoubleWritable readDoubleResult =
+ (DoubleWritable) doubleTreeReader.next(doubleResult);
+
+ HiveDecimalWritable result = null;
+ if (readDoubleResult != null) {
+ HiveDecimal value =
+ HiveDecimal.create(Double.toString(readDoubleResult.get()));
+ if (value != null) {
+ if (previous == null) {
+ result = new HiveDecimalWritable();
+ } else {
+ result = (HiveDecimalWritable) previous;
+ }
+ result.set(value);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ HiveDecimal value =
+ HiveDecimal.create(Double.toString(doubleColVector.vector[elementNum]));
+ if (value != null) {
+ decimalColVector.set(elementNum, value);
+ } else {
+ decimalColVector.noNulls = false;
+ decimalColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ decimalColVector = (DecimalColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ doubleTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, decimalColVector, batchSize);
+ }
+ }
+
+ public static class DecimalFromStringGroupTreeReader extends ConvertTreeReader {
+
+ private TreeReader stringGroupTreeReader;
+
+ private final TypeDescription fileType;
+ private Writable writable;
+ private BytesColumnVector bytesColVector;
+ private int precision;
+ private int scale;
+ private DecimalColumnVector decimalColVector;
+
+ DecimalFromStringGroupTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ this.precision = readerType.getPrecision();
+ this.scale = readerType.getScale();
+ stringGroupTreeReader = getStringGroupTreeReader(columnId, fileType);
+ setConvertTreeReader(stringGroupTreeReader);
+ writable = getStringGroupWritable(fileType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ String stringValue = stringFromStringGroupTreeReader(
+ stringGroupTreeReader, writable, fileType);
+
+ HiveDecimalWritable result = null;
+ if (stringValue != null) {
+ HiveDecimal value = parseDecimalFromString(stringValue);
+ if (value != null) {
+ if (previous == null) {
+ result = new HiveDecimalWritable();
+ } else {
+ result = (HiveDecimalWritable) previous;
+ }
+ result.set(value, precision, scale);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ String string = stringFromBytesColumnVectorEntry(bytesColVector, elementNum);
+ HiveDecimal value = parseDecimalFromString(string);
+ if (value != null) {
+ decimalColVector.set(elementNum, value);
+ } else {
+ decimalColVector.noNulls = false;
+ decimalColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (bytesColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ bytesColVector = new BytesColumnVector();
+ decimalColVector = (DecimalColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ stringGroupTreeReader.nextVector(bytesColVector, isNull, batchSize);
+
+ convertVector(bytesColVector, decimalColVector, batchSize);
+ }
+ }
+
+ public static class DecimalFromTimestampTreeReader extends ConvertTreeReader {
+
+ private TimestampTreeReader timestampTreeReader;
+
+ private final TypeDescription readerType;
+ private TimestampWritable timestampResult;
+ private TimestampColumnVector timestampColVector;
+ private int precision;
+ private int scale;
+ private DecimalColumnVector decimalColVector;
+
+ DecimalFromTimestampTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ this.precision = readerType.getPrecision();
+ this.scale = readerType.getScale();
+ timestampTreeReader = new TimestampTreeReader(columnId, skipCorrupt);
+ setConvertTreeReader(timestampTreeReader);
+ timestampResult = new TimestampWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ TimestampWritable readTimestampResult =
+ (TimestampWritable) timestampTreeReader.next(timestampResult);
+
+ HiveDecimalWritable result = null;
+ if (readTimestampResult != null) {
+ double doubleValue = readTimestampResult.getDouble();
+ HiveDecimal value = HiveDecimal.create(Double.toString(doubleValue));
+ if (value != null) {
+ if (previous == null) {
+ result = new HiveDecimalWritable();
+ } else {
+ result = (HiveDecimalWritable) previous;
+ }
+ result.set(value, precision, scale);
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ timestampResult.set(timestampColVector.asScratchTimestamp(elementNum));
+ double doubleValue = timestampResult.getDouble();
+ HiveDecimal value = HiveDecimal.create(Double.toString(doubleValue));
+ if (value != null) {
+ decimalColVector.set(elementNum, value);
+ } else {
+ decimalColVector.noNulls = false;
+ decimalColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (timestampColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ timestampColVector = new TimestampColumnVector();
+ decimalColVector = (DecimalColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ timestampTreeReader.nextVector(timestampColVector, isNull, batchSize);
+
+ convertVector(timestampColVector, decimalColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private final TypeDescription fileType;
+ private final TypeDescription readerType;
+ private LongColumnVector longColVector;
+ private BytesColumnVector bytesColVector;
+
+ StringGroupFromAnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType, boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ this.readerType = readerType;
+ anyIntegerAsLongTreeReader =
+ new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ Writable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ result = getStringGroupResultFromString(
+ previous, readerType, anyIntegerAsLongTreeReader.getString());
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ long longValue = longColVector.vector[elementNum];
+ String string = anyIntegerAsLongTreeReader.getString(longValue);
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ anyIntegerAsLongTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, bytesColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromFloatTreeReader extends ConvertTreeReader {
+
+ private FloatTreeReader floatTreeReader;
+
+ private final TypeDescription readerType;
+ private FloatWritable floatResult;
+ private DoubleColumnVector doubleColVector;
+ private BytesColumnVector bytesColVector;
+
+
+ StringGroupFromFloatTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ floatTreeReader = new FloatTreeReader(columnId);
+ setConvertTreeReader(floatTreeReader);
+ floatResult = new FloatWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ FloatWritable readFloatResult =
+ (FloatWritable) floatTreeReader.next(floatResult);
+
+ Writable result = null;
+ if (readFloatResult != null) {
+ float floatValue = readFloatResult.get();
+ if (!Float.isNaN(floatValue)) {
+ result = getStringGroupResultFromString(
+ previous, readerType, String.valueOf(floatValue));
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ float floatValue = (float) doubleColVector.vector[elementNum];
+ if (!Float.isNaN(floatValue)) {
+ String string = String.valueOf(floatValue);
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ } else {
+ bytesColVector.noNulls = false;
+ bytesColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ floatTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, bytesColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromDoubleTreeReader extends ConvertTreeReader {
+
+ private DoubleTreeReader doubleTreeReader;
+
+ private final TypeDescription readerType;
+ private DoubleWritable doubleResult;
+ private DoubleColumnVector doubleColVector;
+ private BytesColumnVector bytesColVector;
+
+ StringGroupFromDoubleTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ doubleTreeReader = new DoubleTreeReader(columnId);
+ setConvertTreeReader(doubleTreeReader);
+ doubleResult = new DoubleWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ DoubleWritable readDoubleResult =
+ (DoubleWritable) doubleTreeReader.next(doubleResult);
+
+ Writable result = null;
+ if (readDoubleResult != null) {
+ double doubleValue = readDoubleResult.get();
+ if (!Double.isNaN(doubleValue)) {
+ result = getStringGroupResultFromString(
+ previous, readerType, String.valueOf(doubleValue));
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ double doubleValue = doubleColVector.vector[elementNum];
+ if (!Double.isNaN(doubleValue)) {
+ String string = String.valueOf(doubleValue);
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ } else {
+ bytesColVector.noNulls = false;
+ bytesColVector.isNull[elementNum] = true;
+ }
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (doubleColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ doubleColVector = new DoubleColumnVector();
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ doubleTreeReader.nextVector(doubleColVector, isNull, batchSize);
+
+ convertVector(doubleColVector, bytesColVector, batchSize);
+ }
+ }
+
+
+
+ public static class StringGroupFromDecimalTreeReader extends ConvertTreeReader {
+
+ private DecimalTreeReader decimalTreeReader;
+
+ private int precision;
+ private int scale;
+ private final TypeDescription readerType;
+ private HiveDecimalWritable hiveDecimalResult;
+ private DecimalColumnVector decimalColVector;
+ private BytesColumnVector bytesColVector;
+
+ StringGroupFromDecimalTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType, boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.precision = fileType.getPrecision();
+ this.scale = fileType.getScale();
+ this.readerType = readerType;
+ decimalTreeReader = new DecimalTreeReader(columnId, precision, scale);
+ setConvertTreeReader(decimalTreeReader);
+ hiveDecimalResult = new HiveDecimalWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ HiveDecimalWritable readHiveDecimalResult =
+ (HiveDecimalWritable) decimalTreeReader.next(hiveDecimalResult);
+
+ Writable result = null;
+ if (readHiveDecimalResult != null) {
+ result = getStringGroupResultFromString(
+ previous, readerType, readHiveDecimalResult.getHiveDecimal().toString());
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ String string = decimalColVector.vector[elementNum].getHiveDecimal().toString();
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (decimalColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ decimalColVector = new DecimalColumnVector(precision, scale);
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ decimalTreeReader.nextVector(decimalColVector, isNull, batchSize);
+
+ convertVector(decimalColVector, bytesColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromTimestampTreeReader extends ConvertTreeReader {
+
+ private TimestampTreeReader timestampTreeReader;
+
+ private final TypeDescription readerType;
+ private TimestampWritable timestampWritableResult;
+ private TimestampColumnVector timestampColVector;
+ private BytesColumnVector bytesColVector;
+
+ StringGroupFromTimestampTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ timestampTreeReader = new TimestampTreeReader(columnId, skipCorrupt);
+ setConvertTreeReader(timestampTreeReader);
+ timestampWritableResult = new TimestampWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ TimestampWritable readTimestampWritableResult =
+ (TimestampWritable) timestampTreeReader.next(timestampWritableResult);
+
+ Writable result = null;
+ if (readTimestampWritableResult != null) {
+ result = getStringGroupResultFromString(
+ previous, readerType, readTimestampWritableResult.toString());
+ }
+
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ String string =
+ timestampColVector.asScratchTimestamp(elementNum).toString();
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (timestampColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ timestampColVector = new TimestampColumnVector();
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ timestampTreeReader.nextVector(timestampColVector, isNull, batchSize);
+
+ convertVector(timestampColVector, bytesColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromDateTreeReader extends ConvertTreeReader {
+
+ private DateTreeReader dateTreeReader;
+
+ private final TypeDescription readerType;
+ private LongColumnVector longColVector;
+ private BytesColumnVector bytesColVector;
+ private DateWritable dateWritableResult;
+ private Date date;
+
+ StringGroupFromDateTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ dateTreeReader = new DateTreeReader(columnId);
+ setConvertTreeReader(dateTreeReader);
+ dateWritableResult = new DateWritable();
+ date = new Date(0);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ DateWritable readDateWritableResult =
+ (DateWritable) dateTreeReader.next(dateWritableResult);
+
+ Writable result = null;
+ if (readDateWritableResult != null) {
+ result = getStringGroupResultFromString(
+ previous, readerType, readDateWritableResult.toString());
+ }
+
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ date.setTime(DateWritable.daysToMillis((int) longColVector.vector[elementNum]));
+ String string = date.toString();
+ byte[] bytes = string.getBytes();
+ assignStringGroupVectorEntry(bytesColVector, elementNum, readerType, bytes);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ bytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ dateTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, bytesColVector, batchSize);
+ }
+ }
+
+ public static class StringGroupFromStringGroupTreeReader extends ConvertTreeReader {
+
+ private TreeReader stringGroupTreeReader;
+
+ private final TypeDescription fileType;
+ private final TypeDescription readerType;
+ private Writable writable;
+
+ StringGroupFromStringGroupTreeReader(int columnId, TypeDescription fileType,
+ TypeDescription readerType) throws IOException {
+ super(columnId);
+ this.fileType = fileType;
+ this.readerType = readerType;
+ stringGroupTreeReader = getStringGroupTreeReader(columnId, fileType);
+ setConvertTreeReader(stringGroupTreeReader);
+ writable = getStringGroupWritable(fileType);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ String stringValue = stringFromStringGroupTreeReader(
+ stringGroupTreeReader, writable, fileType);
+
+ Writable result = null;
+ if (stringValue != null) {
+ result = getStringGroupResultFromString(
+ previous, readerType, stringValue);
+ }
+ return result;
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ stringGroupTreeReader.nextVector(previousVector, isNull, batchSize);
+
+ BytesColumnVector resultColVector = (BytesColumnVector) previousVector;
+
+ if (resultColVector.isRepeating) {
+ if (resultColVector.noNulls || !resultColVector.isNull[0]) {
+ convertStringGroupVectorElement(resultColVector, 0, readerType);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[0] = true;
+ }
+ } else if (resultColVector.noNulls){
+ for (int i = 0; i < batchSize; i++) {
+ convertStringGroupVectorElement(resultColVector, i, readerType);
+ }
+ } else {
+ for (int i = 0; i < batchSize; i++) {
+ if (!resultColVector.isNull[i]) {
+ convertStringGroupVectorElement(resultColVector, i, readerType);
+ } else {
+ resultColVector.noNulls = false;
+ resultColVector.isNull[i] = true;
+ }
+ }
+ }
+ }
+ }
+
+ public static class StringGroupFromBinaryTreeReader extends ConvertTreeReader {
+
+ private BinaryTreeReader binaryTreeReader;
+
+ private final TypeDescription readerType;
+ private BytesWritable binaryWritableResult;
+ private BytesColumnVector inBytesColVector;
+ private BytesColumnVector outBytesColVector;
+
+ StringGroupFromBinaryTreeReader(int columnId, TypeDescription readerType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ this.readerType = readerType;
+ binaryTreeReader = new BinaryTreeReader(columnId);
+ setConvertTreeReader(binaryTreeReader);
+ binaryWritableResult = new BytesWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ BytesWritable readBytesWritableResult =
+ (BytesWritable) binaryTreeReader.next(binaryWritableResult);
+
+ Writable result = null;
+ if (readBytesWritableResult != null) {
+ result = getStringGroupResultFromString(
+ previous, readerType, readBytesWritableResult.toString());
+ }
+
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) throws IOException {
+ // UNDONE: Binary to StringGroup conversion?
+ byte[] bytes = inBytesColVector.vector[elementNum];
+ int start = inBytesColVector.start[elementNum];
+ int length = inBytesColVector.length[elementNum];
+ assignStringGroupVectorEntry(outBytesColVector, elementNum, readerType, bytes, start, length);
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (inBytesColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ inBytesColVector = new BytesColumnVector();
+ outBytesColVector = (BytesColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ binaryTreeReader.nextVector(inBytesColVector, isNull, batchSize);
+
+ convertVector(inBytesColVector, outBytesColVector, batchSize);
+ }
+ }
+
+ public static class TimestampFromAnyIntegerTreeReader extends ConvertTreeReader {
+
+ private AnyIntegerTreeReader anyIntegerAsLongTreeReader;
+
+ private LongColumnVector longColVector;
+ private TimestampColumnVector timestampColVector;
+
+ TimestampFromAnyIntegerTreeReader(int columnId, TypeDescription fileType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ anyIntegerAsLongTreeReader =
+ new AnyIntegerTreeReader(columnId, fileType, skipCorrupt);
+ setConvertTreeReader(anyIntegerAsLongTreeReader);
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+ TimestampWritable result = null;
+ if (anyIntegerAsLongTreeReader.read()) {
+ long longValue = anyIntegerAsLongTreeReader.getLong();
+ if (previous == null) {
+ result = new TimestampWritable();
+ } else {
+ result = (TimestampWritable) previous;
+ }
+ // UNDONE: What does the boolean setting need to be?
+ result.set(TimestampWritable.longToTimestamp(longValue, false));
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ long longValue = longColVector.vector[elementNum];
+ // UNDONE: What does the boolean setting need to be?
+ timestampColVector.set(elementNum, TimestampWritable.longToTimestamp(longValue, false));
+ }
+
+ @Override
+ public void nextVector(ColumnVector previousVector,
+ boolean[] isNull,
+ final int batchSize) throws IOException {
+ if (longColVector == null) {
+ // Allocate column vector for file; cast column vector for reader.
+ longColVector = new LongColumnVector();
+ timestampColVector = (TimestampColumnVector) previousVector;
+ }
+ // Read present/isNull stream
+ anyIntegerAsLongTreeReader.nextVector(longColVector, isNull, batchSize);
+
+ convertVector(longColVector, timestampColVector, batchSize);
+ }
+ }
+
+ public static class TimestampFromFloatTreeReader extends ConvertTreeReader {
+
+ private FloatTreeReader floatTreeReader;
+
+ private FloatWritable floatResult;
+ private DoubleColumnVector doubleColVector;
+ private TimestampColumnVector timestampColVector;
+
+ TimestampFromFloatTreeReader(int columnId, TypeDescription fileType,
+ boolean skipCorrupt) throws IOException {
+ super(columnId);
+ floatTreeReader = new FloatTreeReader(columnId);
+ setConvertTreeReader(floatTreeReader);
+ floatResult = new FloatWritable();
+ }
+
+ @Override
+ Object next(Object previous) throws IOException {
+
+ FloatWritable readFloatResult =
+ (FloatWritable) floatTreeReader.next(floatResult);
+
+ TimestampWritable result = null;
+ if (readFloatResult != null) {
+ float floatValue = readFloatResult.get();
+ if (previous == null) {
+ result = new TimestampWritable();
+ } else {
+ result = (TimestampWritable) previous;
+ }
+ result.set(TimestampWritable.doubleToTimestamp(floatValue));
+ }
+ return result;
+ }
+
+ @Override
+ public void setConvertVectorElement(int elementNum) {
+ float floatValue = (float) doubleColVector
<TRUNCATED>
[22/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part.q.out b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part.q.out
index dc2fd9a..ad52108 100644
--- a/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part.q.out
+++ b/ql/src/test/results/clientpositive/schema_evol_orc_nonvec_mapwork_part.q.out
@@ -1,642 +1,4451 @@
PREHOOK: query: -- SORT_QUERY_RESULTS
--
--- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned1
+PREHOOK: Output: default@part_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
--- FILE VARIATION: ORC, Non-Vectorized, FetchWork, Partitioned
+-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Partitioned
+--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned1
-PREHOOK: Output: default@partitioned1
+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 partitioned1 add columns(c int, d string)
+alter table part_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Output: default@partitioned1
-PREHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: Output: default@part_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned1@part=2
-POSTHOOK: query: insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+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@partitioned1@part=2
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=2).d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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 partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: query: insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+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@partitioned1@part=1
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned1 PARTITION(part=1).d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_permute_select
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 994 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
+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
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+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 partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@part_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+CREATE TABLE part_add_int_string_permute_select(insert_num int, a INT, b STRING) PARTITIONED BY(part INT)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@part_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned2
-PREHOOK: Output: default@partitioned2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Output: default@partitioned2
-PREHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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: DESCRIBE FORMATTED part_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@part_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED part_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@part_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Partition Information
+# col_name data_type comment
+
+part int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+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@partitioned2@part=2
-POSTHOOK: query: insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+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@partitioned2@part=2
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=2).b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: query: insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new')
+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@partitioned2@part=1
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned2 PARTITION(part=1).b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select part,a,b from partitioned2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned2
-PREHOOK: Input: default@partitioned2@part=1
-PREHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned2
-POSTHOOK: Input: default@partitioned2@part=1
-POSTHOOK: Input: default@partitioned2@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: --
+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: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,a,b from part_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_add_int_string_permute_select
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), a (type: int), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: int), VALUE._col2 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 1536 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: --
+PREHOOK: Output: default@part_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+--
+-- 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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: query: insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+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@partitioned3@part=1
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@partitioned3
-PREHOOK: Output: default@partitioned3
-POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string)
-POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@partitioned3
-POSTHOOK: Output: default@partitioned3
-PREHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3
-POSTHOOK: query: insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1)
+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@partitioned3@part=1
-POSTHOOK: Output: default@partitioned3@part=2
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=1).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).a EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).c EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned3 PARTITION(part=2).d SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+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: -- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
+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: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_string_group_double
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: double), c2 (type: double), c3 (type: double), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: double), _col3 (type: double), _col4 (type: double), _col5 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: double), VALUE._col2 (type: double), VALUE._col3 (type: double), VALUE._col4 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 10 Data size: 2346 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
+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 permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b
-1 1 original
-1 2 original
-1 3 original
-1 4 original
-1 5 new
-1 6 new
-2 1 new
-2 2 new
-2 3 new
-2 4 new
-PREHOOK: query: select part,a,b,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a b c
-1 1 original NULL
-1 2 original NULL
-1 3 original NULL
-1 4 original NULL
-1 5 new 100
-1 6 new 200
-2 1 new 10
-2 2 new 20
-2 3 new 30
-2 4 new 40
-PREHOOK: query: select part,a,b,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@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: select part,a,c,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,c,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a c d
-1 1 NULL NULL
-1 2 NULL NULL
-1 3 NULL NULL
-1 4 NULL NULL
-1 5 100 hundred
-1 6 200 two hundred
-2 1 10 ten
-2 2 20 twenty
-2 3 30 thirty
-2 4 40 forty
-PREHOOK: query: select part,a,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part a d
-1 1 NULL
-1 2 NULL
-1 3 NULL
-1 4 NULL
-1 5 hundred
-1 6 two hundred
-2 1 ten
-2 2 twenty
-2 3 thirty
-2 4 forty
-PREHOOK: query: select part,c from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,c from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part c
-1 100
-1 200
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-2 10
-2 20
-2 30
-2 40
-PREHOOK: query: select part,d from partitioned1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned1
-PREHOOK: Input: default@partitioned1@part=1
-PREHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,d from partitioned1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned1
-POSTHOOK: Input: default@partitioned1@part=1
-POSTHOOK: Input: default@partitioned1@part=2
-#### A masked pattern was here ####
-part d
-1 NULL
-1 NULL
-1 NULL
-1 NULL
-1 hundred
-1 two hundred
-2 forty
-2 ten
-2 thirty
-2 twenty
+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)
+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)
+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: explain
+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
+POSTHOOK: query: explain
+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
+Explain
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Map Operator Tree:
+ TableScan
+ alias: part_change_date_group_string_group_timestamp
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Select Operator
+ expressions: insert_num (type: int), part (type: int), c1 (type: string), c2 (type: char(50)), c3 (type: char(15)), c4 (type: varchar(50)), c5 (type: varchar(15)), b (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ Reduce Output Operator
+ key expressions: _col0 (type: int)
+ sort order: +
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ value expressions: _col1 (type: int), _col2 (type: string), _col3 (type: char(50)), _col4 (type: char(15)), _col5 (type: varchar(50)), _col6 (type: varchar(15)), _col7 (type: string)
+ Reduce Operator Tree:
+ Select Operator
+ expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: int), VALUE._col1 (type: string), VALUE._col2 (type: char(50)), VALUE._col3 (type: char(15)), VALUE._col4 (type: varchar(50)), VALUE._col5 (type: varchar(15)), VALUE._col6 (type: string)
+ outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ File Output Operator
+ compressed: false
+ Statistics: Num rows: 9 Data size: 4770 Basic stats: COMPLETE Column stats: NONE
+ table:
+ input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+ serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+ Processor Tree:
+ ListSink
+
+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: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@partitioned4
+PREHOOK: Output: default@part_change_date_group_string_group_date
POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) STORED AS ORC
+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)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-PREHOOK: Output: default@partitioned4@part=1
-POSTHOOK: query: insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+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__9
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+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 partitioned4 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@partitioned4
-PREHOOK: Output: default@partitioned4
+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 partitioned4 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Output: default@partitioned4
-PREHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-PREHOOK: Output: default@partitioned4
-POSTHOOK: query: insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1)
+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__10
-POSTHOOK: Output: default@partitioned4@part=1
-POSTHOOK: Output: default@partitioned4@part=2
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=1).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).a EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: partitioned4 PARTITION(part=2).b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1 _col2
-PREHOOK: query: select part,a,b from partitioned4
-PREHOOK: type: QUERY
-PREHOOK: Input: default@partitioned4
-PREHOOK: Input: default@partitioned4@part=1
-PREHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-POSTHOOK: query: select part,a,b from partitioned4
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@partitioned4
-POSTHOOK: Input: default@partitioned4@part=1
-POSTHOOK: Input: default@partitioned4@part=2
-#### A masked pattern was here ####
-part a b
-1 1000 original
-1 3 original
-1 4 original
-1 5000 new
-1 6737 original
-1 90000 new
-2 200 new
-2 32768 new
-2 40000 new
-2 72909 new
-PREHOOK: query: DROP TABLE partitioned1
+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: Line
<TRUNCATED>
[37/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_part.q b/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_part.q
index b0e57fb..38afb9d 100644
--- a/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_part.q
+++ b/ql/src/test/queries/clientpositive/schema_evol_orc_acidvec_mapwork_part.q
@@ -2,175 +2,858 @@ set hive.mapred.mode=nonstrict;
set hive.cli.print.header=true;
set hive.support.concurrency=true;
set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
SET hive.exec.schema.evolution=false;
-SET hive.vectorized.execution.enabled=true;
SET hive.vectorized.use.vectorized.input.format=true;
SET hive.vectorized.use.vector.serde.deserialize=false;
SET hive.vectorized.use.row.serde.deserialize=false;
set hive.fetch.task.conversion=none;
+SET hive.vectorized.execution.enabled=true;
set hive.exec.dynamic.partition.mode=nonstrict;
-
+set hive.metastore.disallow.incompatible.col.type.changes=true;
+set hive.default.fileformat=orc;
-- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, ACID 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
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE partitioned1(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- 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');
-insert into table partitioned1 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table part_add_int_permute_select partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned1 add columns(c int, d string);
+alter table part_add_int_permute_select add columns(c int);
-insert into table partitioned1 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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);
-insert into table partitioned1 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table part_add_int_permute_select partition(part=1)
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200);
-- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,a,b from part_add_int_permute_select order by insert_num;
+select insert_num,part,a,b,c from part_add_int_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_permute_select order by insert_num;
+
+drop table part_add_int_permute_select;
+
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
--
-CREATE TABLE partitioned2(a smallint, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
+
+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');
+
+-- Table-Non-Cascade ADD COLUMNS ...
+alter table part_add_int_string_permute_select add columns(c int, d string);
+
+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');
+
+insert into table part_add_int_string_permute_select partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
+
+-- 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;
+select insert_num,part,a,b,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,b,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,c,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,a,d from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,c from part_add_int_string_permute_select order by insert_num;
+select insert_num,part,d from part_add_int_string_permute_select order by insert_num;
+
+drop table part_add_int_string_permute_select;
-insert into table partitioned2 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned2 change column a a int;
+alter table part_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING);
+
+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');
-insert into table partitioned2 partition(part=2) values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new');
+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');
-insert into table partitioned2 partition(part=1) values(5000, 'new'),(90000, 'new');
+select insert_num,part,c1,c2,c3,b from part_change_string_group_double order by insert_num;
-select part,a,b from partitioned2;
+drop table part_change_string_group_double;
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DYNAMIC INSERT
----
-CREATE TABLE partitioned3(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+--
+-- 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');
-insert into table partitioned3 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+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');
--- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned3 add columns(c int, d string);
+-- 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);
-insert into table partitioned3 partition(part) values(1, 'new', 10, 'ten', 2),(2, 'new', 20, 'twenty', 2), (3, 'new', 30, 'thirty', 2),(4, 'new', 40, 'forty', 2),
- (5, 'new', 100, 'hundred', 1),(6, 'new', 200, 'two hundred', 1);
+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');
+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');
--- SELECT permutation columns to make sure NULL defaulting works right
-select part,a,b from partitioned1;
-select part,a,b,c from partitioned1;
-select part,a,b,c,d from partitioned1;
-select part,a,c,d from partitioned1;
-select part,a,d from partitioned1;
-select part,c from partitioned1;
-select part,d from partitioned1;
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_timestamp order by insert_num;
+
+drop table part_change_date_group_string_group_timestamp;
+
+
+
+--
+-- 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');
+
+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');
+
+-- 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);
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_date_group_string_group_date order by insert_num;
+
+drop table part_change_date_group_string_group_date;
+
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_string;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_char_trunc;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_numeric_group_string_group_multi_ints_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_multi_ints_varchar_trunc;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_string order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_string;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_char_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_char_trunc;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_numeric_group_string_group_floating_varchar_trunc order by insert_num;
+
+drop table part_change_numeric_group_string_group_floating_varchar_trunc;
+
+
+------------------------------------------------------------------------------------------
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_string_group_string_group_string order by insert_num;
+
+drop table part_change_string_group_string_group_string;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_char order by insert_num;
+
+drop table part_change_string_group_string_group_char;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+
+-- 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) ;
+
+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);
+select insert_num,part,c1,c2,c3,b from part_change_string_group_string_group_varchar order by insert_num;
+drop table part_change_string_group_string_group_varchar;
+
+
+
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP
+--
+--
--
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... DYNAMIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for "lower" type to "higher" NUMERIC_GROUP: TINYINT, (SMALLINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE)
--
-CREATE TABLE partitioned4(a smallint, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned4 partition(part=1) values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original');
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-- Table-Non-Cascade CHANGE COLUMNS ...
-alter table partitioned4 change column a a int;
+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) ;
+
+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);
-insert into table partitioned4 partition(part) values(72909, 'new', 2),(200, 'new', 2), (32768, 'new', 2),(40000, 'new', 2),
- (5000, 'new', 1),(90000, 'new', 1);
+select insert_num,part,c1,c2,c3,c4,c5,c6,b from part_change_lower_to_higher_numeric_group_tinyint order by insert_num;
-select part,a,b from partitioned4;
+drop table part_change_lower_to_higher_numeric_group_tinyint;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,c5,b from part_change_lower_to_higher_numeric_group_smallint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_smallint;
+
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+-- 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);
+
+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);
+
+select insert_num,part,c1,c2,c3,c4,b from part_change_lower_to_higher_numeric_group_int order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_int;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,c2,c3,b from part_change_lower_to_higher_numeric_group_bigint order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_bigint;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+-- 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) ;
+
+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);
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_decimal order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_decimal;
+
+
+--
+-- 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');
+
+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');
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+-- Table-Non-Cascade CHANGE COLUMNS ...
+alter table part_change_lower_to_higher_numeric_group_float replace columns (insert_num int, c1 DOUBLE, b STRING) ;
+
+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);
+
+select insert_num,part,c1,b from part_change_lower_to_higher_numeric_group_float order by insert_num;
+
+drop table part_change_lower_to_higher_numeric_group_float;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... UPDATE New Columns
---
-CREATE TABLE partitioned5(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned5 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_update_1 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned5 add columns(c int, d string);
+alter table partitioned_update_1 add columns(c int, d string);
-insert into table partitioned5 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned5 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_update_1 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned5;
+select insert_num,part,a,b,c,d from partitioned_update_1;
-- UPDATE New Columns
-update partitioned5 set c=99;
+update partitioned_update_1 set c=99;
-select part,a,b,c,d from partitioned5;
+select insert_num,part,a,b,c,d from partitioned_update_1;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where old column
---
-CREATE TABLE partitioned6(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned6 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_delete_1 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned6 add columns(c int, d string);
+alter table partitioned_delete_1 add columns(c int, d string);
-insert into table partitioned6 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned6 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_delete_1 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned6;
+select part,a,b,c,d from partitioned_delete_1;
-- DELETE where old column
-delete from partitioned6 where a = 2 or a = 4 or a = 6;
+delete from partitioned_delete_1 where a = 2 or a = 4 or a = 6;
-select part,a,b,c,d from partitioned6;
+
+select insert_num,part,a,b,c,d from partitioned_delete_1;
--
--
-- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... DELETE where new column
---
-CREATE TABLE partitioned7(a INT, b STRING) PARTITIONED BY(part INT) clustered by (a) into 2 buckets STORED AS ORC TBLPROPERTIES ('transactional'='true');
+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');
-insert into table partitioned7 partition(part=1) values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original');
+insert into table partitioned_delete_2 partition(part=1)
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original');
-- Table-Non-Cascade ADD COLUMNS ...
-alter table partitioned7 add columns(c int, d string);
+alter table partitioned_delete_2 add columns(c int, d string);
-insert into table partitioned7 partition(part=2) values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty');
+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');
-insert into table partitioned7 partition(part=1) values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred');
+insert into table partitioned_delete_2 partition(part=1)
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred');
-select part,a,b,c,d from partitioned7;
+select insert_num,part,a,b,c,d from partitioned_delete_2;
-- DELETE where new column
-delete from partitioned7 where a = 1 or c = 30 or c == 100;
-
-select part,a,b,c,d from partitioned7;
+delete from partitioned_delete_2 where a = 1 or c = 30 or c == 100;
+select insert_num,part,a,b,c,d from partitioned_delete_2;
-DROP TABLE partitioned1;
-DROP TABLE partitioned2;
-DROP TABLE partitioned3;
-DROP TABLE partitioned4;
-DROP TABLE partitioned5;
-DROP TABLE partitioned6;
-DROP TABLE partitioned7;
\ No newline at end of file
+DROP TABLE partitioned_update_1;
+DROP TABLE partitioned_delete_1;
+DROP TABLE partitioned_delete_2;
\ No newline at end of file
[05/41] hive git commit: HIVE-13178: Enhance ORC Schema Evolution to
handle more standard data type conversions (Matt McCline,
reviewed by Prasanth Jayachandran)
Posted by mm...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/a16058e1/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_table.q.out b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_table.q.out
index df9494f..39954b8 100644
--- a/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_table.q.out
+++ b/ql/src/test/results/clientpositive/tez/schema_evol_orc_nonvec_mapwork_table.q.out
@@ -2,297 +2,3736 @@ PREHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+--
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table1
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- SORT_QUERY_RESULTS
--
-- FILE VARIATION: ORC, Non-Vectorized, MapWork, Table
--
+------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE ADD COLUMNS
+--
--
--- SECTION VARIATION: ALTER TABLE ADD COLUMNS ... STATIC INSERT
----
-CREATE TABLE table1(a INT, b STRING) STORED AS ORC
+-- SUBSECTION: ALTER TABLE ADD COLUMNS: INT PERMUTE SELECT
+--
+--
+CREATE TABLE table_add_int_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__1
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'original'),(2, 'original'), (3, 'original'),(4, 'original')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__1
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
PREHOOK: type: ALTERTABLE_ADDCOLS
-PREHOOK: Input: default@table1
-PREHOOK: Output: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
-alter table table1 add columns(c int, d string)
+alter table table_add_int_permute_select add columns(c int)
POSTHOOK: type: ALTERTABLE_ADDCOLS
-POSTHOOK: Input: default@table1
-POSTHOOK: Output: default@table1
-PREHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__2
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(1, 'new', 10, 'ten'),(2, 'new', 20, 'twenty'), (3, 'new', 30, 'thirty'),(4, 'new', 40, 'forty')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (5, 1, 'new', 10),
+ (6, 2, 'new', 20),
+ (7, 3, 'new', 30),
+ (8, 4, 'new', 40)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__2
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
-PREHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__3
-PREHOOK: Output: default@table1
-POSTHOOK: query: insert into table table1 values(5, 'new', 100, 'hundred'),(6, 'new', 200, 'two hundred')
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: insert into table table_add_int_permute_select
+ values (9, 5, 'new', 100),
+ (10, 6, 'new', 200)
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__3
-POSTHOOK: Output: default@table1
-POSTHOOK: Lineage: table1.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table1.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-POSTHOOK: Lineage: table1.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
-POSTHOOK: Lineage: table1.d SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: Lineage: table_add_int_permute_select.a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.b SIMPLE [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.c EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_permute_select.insert_num EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
_col0 _col1 _col2 _col3
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=99)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=99)
+ default@table_add_int_permute_select,table_add_int_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
+select insert_num,a,b from table_add_int_permute_select order by insert_num
PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
+PREHOOK: Input: default@table_add_int_permute_select
#### A masked pattern was here ####
POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
-select a,b from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b
-1 new
-1 original
-2 new
-2 original
-3 new
-3 original
-4 new
-4 original
-5 new
-6 new
-PREHOOK: query: select a,b,c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c
-1 new 10
-1 original NULL
-2 new 20
-2 original NULL
-3 new 30
-3 original NULL
-4 new 40
-4 original NULL
-5 new 100
-6 new 200
-PREHOOK: query: select a,b,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a b c d
-1 new 10 ten
-1 original NULL NULL
-2 new 20 twenty
-2 original NULL NULL
-3 new 30 thirty
-3 original NULL NULL
-4 new 40 forty
-4 original NULL NULL
-5 new 100 hundred
-6 new 200 two hundred
-PREHOOK: query: select a,c,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,c,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a c d
-1 10 ten
-1 NULL NULL
-2 20 twenty
-2 NULL NULL
-3 30 thirty
-3 NULL NULL
-4 40 forty
-4 NULL NULL
-5 100 hundred
-6 200 two hundred
-PREHOOK: query: select a,d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select a,d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-a d
+select insert_num,a,b from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_permute_select
+#### A masked pattern was here ####
+insert_num c
1 NULL
-1 ten
+10 200
2 NULL
-2 twenty
3 NULL
-3 thirty
4 NULL
-4 forty
-5 hundred
-6 two hundred
-PREHOOK: query: select c from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select c from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-c
-10
-100
-20
-200
-30
-40
-NULL
-NULL
-NULL
-NULL
-PREHOOK: query: select d from table1
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table1
-#### A masked pattern was here ####
-POSTHOOK: query: select d from table1
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table1
-#### A masked pattern was here ####
-d
-NULL
-NULL
-NULL
-NULL
-forty
-hundred
-ten
-thirty
-twenty
-two hundred
-PREHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: drop table table_add_int_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_permute_select
+PREHOOK: Output: default@table_add_int_permute_select
+POSTHOOK: query: drop table table_add_int_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_permute_select
+POSTHOOK: Output: default@table_add_int_permute_select
+PREHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@table2
-POSTHOOK: query: --
--- SECTION VARIATION: ALTER TABLE CHANGE COLUMN ... STATIC INSERT
--- smallint = (2-byte signed integer, from -32,768 to 32,767)
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- SUBSECTION: ALTER TABLE ADD COLUMNS: INT, STRING, PERMUTE SELECT
--
-CREATE TABLE table2(a smallint, b STRING) STORED AS ORC
+--
+CREATE TABLE table_add_int_string_permute_select(insert_num int, a INT, b STRING)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__4
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(1000, 'original'),(6737, 'original'), ('3', 'original'),('4', 'original')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (1, 1, 'original'),
+ (2, 2, 'original'),
+ (3, 3, 'original'),
+ (4, 4, 'original')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__4
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-PREHOOK: type: ALTERTABLE_RENAMECOL
-PREHOOK: Input: default@table2
-PREHOOK: Output: default@table2
-POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
-alter table table2 change column a a int
-POSTHOOK: type: ALTERTABLE_RENAMECOL
-POSTHOOK: Input: default@table2
-POSTHOOK: Output: default@table2
-PREHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2
+PREHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: -- Table-Non-Cascade ADD COLUMNS ...
+alter table table_add_int_string_permute_select add columns(c int, d string)
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: query: DESCRIBE FORMATTED table_add_int_string_permute_select
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+a int
+b string
+c int
+d string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 4
+ rawDataSize 400
+ totalSize 363
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__5
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(72909, 'new'),(200, 'new'), (32768, 'new'),(40000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (5, 1, 'new', 10, 'ten'),
+ (6, 2, 'new', 20, 'twenty'),
+ (7, 3, 'new', 30, 'thirty'),
+ (8, 4, 'new', 40, 'forty')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__5
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__5)values__tmp__table__5.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
PREHOOK: type: QUERY
PREHOOK: Input: default@values__tmp__table__6
-PREHOOK: Output: default@table2
-POSTHOOK: query: insert into table table2 values(5000, 'new'),(90000, 'new')
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: insert into table table_add_int_string_permute_select
+ values (9, 5, 'new', 100, 'hundred'),
+ (10, 6, 'new', 200, 'two hundred')
POSTHOOK: type: QUERY
POSTHOOK: Input: default@values__tmp__table__6
-POSTHOOK: Output: default@table2
-POSTHOOK: Lineage: table2.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
-POSTHOOK: Lineage: table2.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
-_col0 _col1
-PREHOOK: query: select a,b from table2
-PREHOOK: type: QUERY
-PREHOOK: Input: default@table2
-#### A masked pattern was here ####
-POSTHOOK: query: select a,b from table2
-POSTHOOK: type: QUERY
-POSTHOOK: Input: default@table2
-#### A masked pattern was here ####
-a b
-1000 original
-200 new
-3 original
-32768 new
-4 original
-40000 new
-5000 new
-6737 original
-72909 new
-90000 new
-PREHOOK: query: DROP TABLE table1
+POSTHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: Lineage: table_add_int_string_permute_select.a EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.b SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.c EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.d SIMPLE [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_add_int_string_permute_select.insert_num EXPRESSION [(values__tmp__table__6)values__tmp__table__6.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=153)
+ Output:["_col0","_col1","_col2"]
+ TableScan [TS_0] (rows=10 width=153)
+ default@table_add_int_string_permute_select,table_add_int_string_permute_select,Tbl:COMPLETE,Col:NONE,Output:["insert_num","a","b"]
+
+PREHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: -- SELECT permutation columns to make sure NULL defaulting works right
+select insert_num,a,b from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b
+1 1 original
+10 6 new
+2 2 original
+3 3 original
+4 4 original
+5 1 new
+6 2 new
+7 3 new
+8 4 new
+9 5 new
+PREHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c
+1 1 original NULL
+10 6 new 200
+2 2 original NULL
+3 3 original NULL
+4 4 original NULL
+5 1 new 10
+6 2 new 20
+7 3 new 30
+8 4 new 40
+9 5 new 100
+PREHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,b,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a b c d
+1 1 original NULL NULL
+10 6 new 200 two hundred
+2 2 original NULL NULL
+3 3 original NULL NULL
+4 4 original NULL NULL
+5 1 new 10 ten
+6 2 new 20 twenty
+7 3 new 30 thirty
+8 4 new 40 forty
+9 5 new 100 hundred
+PREHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,c,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a c d
+1 1 NULL NULL
+10 6 200 two hundred
+2 2 NULL NULL
+3 3 NULL NULL
+4 4 NULL NULL
+5 1 10 ten
+6 2 20 twenty
+7 3 30 thirty
+8 4 40 forty
+9 5 100 hundred
+PREHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,a,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num a d
+1 1 NULL
+10 6 two hundred
+2 2 NULL
+3 3 NULL
+4 4 NULL
+5 1 ten
+6 2 twenty
+7 3 thirty
+8 4 forty
+9 5 hundred
+PREHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num c
+1 NULL
+10 200
+2 NULL
+3 NULL
+4 NULL
+5 10
+6 20
+7 30
+8 40
+9 100
+PREHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,d from table_add_int_string_permute_select order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_add_int_string_permute_select
+#### A masked pattern was here ####
+insert_num d
+1 NULL
+10 two hundred
+2 NULL
+3 NULL
+4 NULL
+5 ten
+6 twenty
+7 thirty
+8 forty
+9 hundred
+PREHOOK: query: drop table table_add_int_string_permute_select
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_add_int_string_permute_select
+PREHOOK: Output: default@table_add_int_string_permute_select
+POSTHOOK: query: drop table table_add_int_string_permute_select
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_add_int_string_permute_select
+POSTHOOK: Output: default@table_add_int_string_permute_select
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for STRING_GROUP -> DOUBLE: (STRING, CHAR, VARCHAR)
+--
+CREATE TABLE table_change_string_group_double(insert_num int, c1 STRING, c2 CHAR(50), c3 VARCHAR(50), b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__7
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (1, '753.7028', '753.7028', '753.7028', 'original'),
+ (2, '-3651.672121', '-3651.672121', '-3651.672121', 'original'),
+ (3, '-29.0764', '-29.0764', '-29.0764', 'original'),
+ (4, '-10.3', '-10.3', '-10.3', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__7
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 SIMPLE [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__7)values__tmp__table__7.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_string_group_double replace columns (insert_num int, c1 DOUBLE, c2 DOUBLE, c3 DOUBLE, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__8
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (5, 30.774, 30.774, 30.774, 'new'),
+ (6, 20.31, 20.31, 20.31, 'new'),
+ (7, 46114.284799488, 46114.284799488, 46114.284799488, 'new'),
+ (8, -66475.561431, -66475.561431, -66475.561431, 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__8
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__8)values__tmp__table__8.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__9
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: insert into table table_change_string_group_double
+ values (9, 17808.963785, 17808.963785, 17808.963785, 'new'),
+ (10, 9250340.75 , 9250340.75 , 9250340.75 , 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__9
+POSTHOOK: Output: default@table_change_string_group_double
+POSTHOOK: Lineage: table_change_string_group_double.b SIMPLE [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c1 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c2 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.c3 EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_string_group_double.insert_num EXPRESSION [(values__tmp__table__9)values__tmp__table__9.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=234)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ TableScan [TS_0] (rows=10 width=234)
+ default@table_change_string_group_double,table_change_string_group_double,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,b from table_change_string_group_double order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_string_group_double
+#### A masked pattern was here ####
+insert_num c1 c2 c3 b
+1 753.7028 753.7028 753.7028 original
+10 9250340.75 9250340.75 9250340.75 new
+2 -3651.672121 -3651.672121 -3651.672121 original
+3 -29.0764 -29.0764 -29.0764 original
+4 -10.3 -10.3 -10.3 original
+5 30.774 30.774 30.774 new
+6 20.31 20.31 20.31 new
+7 46114.284799488 46114.284799488 46114.284799488 new
+8 -66475.561431 -66475.561431 -66475.561431 new
+9 17808.963785 17808.963785 17808.963785 new
+PREHOOK: query: drop table table_change_string_group_double
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_string_group_double
+PREHOOK: Output: default@table_change_string_group_double
+POSTHOOK: query: drop table table_change_string_group_double
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_string_group_double
+POSTHOOK: Output: default@table_change_string_group_double
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: TIMESTAMP, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_timestamp(insert_num int, c1 TIMESTAMP, c2 TIMESTAMP, c3 TIMESTAMP, c4 TIMESTAMP, c5 TIMESTAMP, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__10
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (1, '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', '2000-12-18 08:42:30.000595596', 'original'),
+ (2, '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', '2024-11-11 16:42:41.101', 'original'),
+ (3, '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', '2021-09-24 03:18:32.413655165', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__10
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__10)values__tmp__table__10.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_timestamp replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__11
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (4, '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', '0004-09-22 18:26:29.519542222', 'new'),
+ (5, '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', '1815-05-06 00:12:37.543584705', 'new'),
+ (6, '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', '2007-02-09 05:17:29.368756876', 'new'),
+ (7, '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', '2002-05-10 05:29:48.990818073', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__11
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__11)values__tmp__table__11.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__12
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: insert into table table_change_date_group_string_group_timestamp
+ values (8, '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', '6229-06-28 02:54:28.970117179', 'new'),
+ (9, '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', '5966-07-09 03:30:50.597', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__12
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.b SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c1 SIMPLE [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c2 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c3 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c4 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.c5 EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_timestamp.insert_num EXPRESSION [(values__tmp__table__12)values__tmp__table__12.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=530)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=530)
+ default@table_change_date_group_string_group_timestamp,table_change_date_group_string_group_timestamp,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_timestamp order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 08:42:30.000595596 2000-12-18 08:42:30.000595596 2000-12-18 08:4 2000-12-18 08:42:30.000595596 2000-12-18 08:4 original
+2 2024-11-11 16:42:41.101 2024-11-11 16:42:41.101 2024-11-11 16:4 2024-11-11 16:42:41.101 2024-11-11 16:4 original
+3 2021-09-24 03:18:32.413655165 2021-09-24 03:18:32.413655165 2021-09-24 03:1 2021-09-24 03:18:32.413655165 2021-09-24 03:1 original
+4 0004-09-22 18:26:29.519542222 0004-09-22 18:26:29.519542222 0004-09-22 18:2 0004-09-22 18:26:29.519542222 0004-09-22 18:2 new
+5 1815-05-06 00:12:37.543584705 1815-05-06 00:12:37.543584705 1815-05-06 00:1 1815-05-06 00:12:37.543584705 1815-05-06 00:1 new
+6 2007-02-09 05:17:29.368756876 2007-02-09 05:17:29.368756876 2007-02-09 05:1 2007-02-09 05:17:29.368756876 2007-02-09 05:1 new
+7 2002-05-10 05:29:48.990818073 2002-05-10 05:29:48.990818073 2002-05-10 05:2 2002-05-10 05:29:48.990818073 2002-05-10 05:2 new
+8 6229-06-28 02:54:28.970117179 6229-06-28 02:54:28.970117179 6229-06-28 02:5 6229-06-28 02:54:28.970117179 6229-06-28 02:5 new
+9 5966-07-09 03:30:50.597 5966-07-09 03:30:50.597 5966-07-09 03:3 5966-07-09 03:30:50.597 5966-07-09 03:3 new
+PREHOOK: query: drop table table_change_date_group_string_group_timestamp
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_timestamp
+PREHOOK: Output: default@table_change_date_group_string_group_timestamp
+POSTHOOK: query: drop table table_change_date_group_string_group_timestamp
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_timestamp
+POSTHOOK: Output: default@table_change_date_group_string_group_timestamp
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for DATE_GROUP -> STRING_GROUP: DATE, (STRING, CHAR, CHAR trunc, VARCHAR, VARCHAR trunc)
+--
+CREATE TABLE table_change_date_group_string_group_date(insert_num int, c1 DATE, c2 DATE, c3 DATE, c4 DATE, c5 DATE, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__13
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (1, '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', '2000-12-18', 'original'),
+ (2, '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', '2024-11-11', 'original'),
+ (3, '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', '2021-09-24', 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__13
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__13)values__tmp__table__13.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_date_group_string_group_date replace columns(insert_num int, c1 STRING, c2 CHAR(50), c3 CHAR(15), c4 VARCHAR(50), c5 VARCHAR(15), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: query: DESCRIBE FORMATTED table_change_date_group_string_group_date
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+col_name data_type comment
+# col_name data_type comment
+
+insert_num int
+c1 string
+c2 char(50)
+c3 char(15)
+c4 varchar(50)
+c5 varchar(15)
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 3
+ rawDataSize 1128
+ totalSize 587
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
+InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__14
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: insert into table table_change_date_group_string_group_date
+ values (4, '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', '0004-09-22', 'new'),
+ (5, '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', '1815-05-06', 'new'),
+ (6, '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', '2007-02-09', 'new'),
+ (7, '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', '2002-05-10', 'new'),
+ (8, '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', '6229-06-28', 'new'),
+ (9, '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', '5966-07-09', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__14
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: Lineage: table_change_date_group_string_group_date.b SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col7, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c1 SIMPLE [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c2 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c3 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c4 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.c5 EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_date_group_string_group_date.insert_num EXPRESSION [(values__tmp__table__14)values__tmp__table__14.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5 _col6
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=9 width=529)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ TableScan [TS_0] (rows=9 width=529)
+ default@table_change_date_group_string_group_date,table_change_date_group_string_group_date,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","c5","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,b from table_change_date_group_string_group_date order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 c5 b
+1 2000-12-18 2000-12-18 2000-12-18 2000-12-18 2000-12-18 original
+2 2024-11-11 2024-11-11 2024-11-11 2024-11-11 2024-11-11 original
+3 2021-09-24 2021-09-24 2021-09-24 2021-09-24 2021-09-24 original
+4 0004-09-22 0004-09-22 0004-09-22 0004-09-22 0004-09-22 new
+5 1815-05-06 1815-05-06 1815-05-06 1815-05-06 1815-05-06 new
+6 2007-02-09 2007-02-09 2007-02-09 2007-02-09 2007-02-09 new
+7 2002-05-10 2002-05-10 2002-05-10 2002-05-10 2002-05-10 new
+8 6229-06-28 6229-06-28 6229-06-28 6229-06-28 6229-06-28 new
+9 5966-07-09 5966-07-09 5966-07-09 5966-07-09 5966-07-09 new
+PREHOOK: query: drop table table_change_date_group_string_group_date
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_date_group_string_group_date
+PREHOOK: Output: default@table_change_date_group_string_group_date
+POSTHOOK: query: drop table table_change_date_group_string_group_date
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_date_group_string_group_date
+POSTHOOK: Output: default@table_change_date_group_string_group_date
+PREHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: ------------------------------------------------------------------------------------------
+-- SECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP
+--
+--
+--
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), STRING
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_string(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__15
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__15
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__15)values__tmp__table__15.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_string replace columns (insert_num int, c1 STRING, c2 STRING, c3 STRING, c4 STRING, b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__16
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_string
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__16
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.b SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c1 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c2 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c3 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.c4 SIMPLE [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_string.insert_num EXPRESSION [(values__tmp__table__16)values__tmp__table__16.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=313)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=313)
+ default@table_change_numeric_group_string_group_multi_ints_string,table_change_numeric_group_string_group_multi_ints_string,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_string order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+5 2000 72909 3244222 -93222 new
+6 1 200 2323322 5430907 new
+7 256 32768 31889 470614135 new
+8 5555 40000 -719017797 810662019 new
+9 100 5000 5443 0 new
+PREHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: query: drop table table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_string
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_string
+PREHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: --
+-- SUBSECTION: ALTER TABLE CHANGE COLUMNS for NUMERIC_GROUP -> STRING_GROUP: (TINYINT, SMALLINT, INT, BIGINT), CHAR
+--
+CREATE TABLE table_change_numeric_group_string_group_multi_ints_char(insert_num int, c1 tinyint, c2 smallint, c3 int, c4 bigint, b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__17
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (1, 45, 1000, 483777, -23866739993, 'original'),
+ (2, -2, -6737, 56, 28899333, 'original'),
+ (3, -255, 4957, 832222222, 9000000000, 'original'),
+ (4, 0, 20435, 847492223, -999999999999, 'original')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__17
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__17)values__tmp__table__17.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+2 -2 -6737 56 28899333 original
+3 NULL 4957 832222222 9000000000 original
+4 0 20435 847492223 -999999999999 original
+PREHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: -- Table-Non-Cascade CHANGE COLUMNS ...
+alter table table_change_numeric_group_string_group_multi_ints_char replace columns (insert_num int, c1 CHAR(50), c2 CHAR(50), c3 CHAR(50), c4 CHAR(50), b STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+PREHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+PREHOOK: type: QUERY
+PREHOOK: Input: default@values__tmp__table__18
+PREHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_multi_ints_char
+ values (5, '2000', '72909', '3244222', '-93222', 'new'),
+ (6, '1', '200', '2323322', '5430907', 'new'),
+ (7, '256', '32768', '31889', '470614135', 'new'),
+ (8, '5555', '40000', '-719017797', '810662019', 'new'),
+ (9, '100', '5000', '5443', '0', 'new'),
+ (10, '17', '90000', '754072151', '3289094', 'new')
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@values__tmp__table__18
+POSTHOOK: Output: default@table_change_numeric_group_string_group_multi_ints_char
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.b SIMPLE [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col6, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c1 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col2, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c2 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col3, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c3 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col4, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.c4 EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col5, type:string, comment:), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_multi_ints_char.insert_num EXPRESSION [(values__tmp__table__18)values__tmp__table__18.FieldSchema(name:tmp_values_col1, type:string, comment:), ]
+_col0 _col1 _col2 _col3 _col4 _col5
+PREHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+Explain
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 2
+ File Output Operator [FS_4]
+ Select Operator [SEL_3] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_2]
+ Select Operator [SEL_1] (rows=10 width=422)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ TableScan [TS_0] (rows=10 width=422)
+ default@table_change_numeric_group_string_group_multi_ints_char,table_change_numeric_group_string_group_multi_ints_char,Tbl:COMPLETE,Col:NONE,Output:["insert_num","c1","c2","c3","c4","b"]
+
+PREHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,b from table_change_numeric_group_string_group_multi_ints_char order by insert_num
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_multi_ints_char
+#### A masked pattern was here ####
+insert_num c1 c2 c3 c4 b
+1 45 1000 483777 -23866739993 original
+10 17 90000 754072151 3289094 new
+2 -2 -6737 56 288
<TRUNCATED>