You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by px...@apache.org on 2017/04/20 17:34:30 UTC
hive git commit: HIVE-14807: analyze table compute statistics fails
due to presence of Infinity value in double column (Pengcheng Xiong,
reviewed by Ashutosh Chauhan)
Repository: hive
Updated Branches:
refs/heads/master 9d5d737db -> 8e2f1830a
HIVE-14807: analyze table compute statistics fails due to presence of Infinity value in double column (Pengcheng Xiong, reviewed by Ashutosh Chauhan)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8e2f1830
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8e2f1830
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8e2f1830
Branch: refs/heads/master
Commit: 8e2f1830a9156dcdd4563bfad53513d786038518
Parents: 9d5d737
Author: Pengcheng Xiong <px...@hortonworks.com>
Authored: Thu Apr 20 10:34:10 2017 -0700
Committer: Pengcheng Xiong <px...@hortonworks.com>
Committed: Thu Apr 20 10:34:10 2017 -0700
----------------------------------------------------------------------
.../hadoop/hive/ql/exec/ColumnStatsTask.java | 25 +-
.../clientpositive/columnstats_infinity.q | 44 +++
.../clientpositive/columnstats_infinity.q.out | 295 +++++++++++++++++++
3 files changed, 359 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/8e2f1830/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsTask.java
index a899964..cb16fb7 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsTask.java
@@ -110,8 +110,12 @@ public class ColumnStatsTask extends Task<ColumnStatsWork> implements Serializab
}
}
+ @SuppressWarnings("serial")
+ class UnsupportedDoubleException extends Exception {
+ }
+
private void unpackDoubleStats(ObjectInspector oi, Object o, String fName,
- ColumnStatisticsObj statsObj) {
+ ColumnStatisticsObj statsObj) throws UnsupportedDoubleException {
if (fName.equals("countnulls")) {
long v = ((LongObjectInspector) oi).get(o);
statsObj.getStatsData().getDoubleStats().setNumNulls(v);
@@ -120,9 +124,15 @@ public class ColumnStatsTask extends Task<ColumnStatsWork> implements Serializab
statsObj.getStatsData().getDoubleStats().setNumDVs(v);
} else if (fName.equals("max")) {
double d = ((DoubleObjectInspector) oi).get(o);
+ if (Double.isInfinite(d) || Double.isNaN(d)) {
+ throw new UnsupportedDoubleException();
+ }
statsObj.getStatsData().getDoubleStats().setHighValue(d);
} else if (fName.equals("min")) {
double d = ((DoubleObjectInspector) oi).get(o);
+ if (Double.isInfinite(d) || Double.isNaN(d)) {
+ throw new UnsupportedDoubleException();
+ }
statsObj.getStatsData().getDoubleStats().setLowValue(d);
} else if (fName.equals("ndvbitvector")) {
PrimitiveObjectInspector poi = (PrimitiveObjectInspector) oi;
@@ -234,7 +244,7 @@ public class ColumnStatsTask extends Task<ColumnStatsWork> implements Serializab
}
private void unpackPrimitiveObject (ObjectInspector oi, Object o, String fieldName,
- ColumnStatisticsObj statsObj) {
+ ColumnStatisticsObj statsObj) throws UnsupportedDoubleException {
if (o == null) {
return;
}
@@ -294,7 +304,7 @@ public class ColumnStatsTask extends Task<ColumnStatsWork> implements Serializab
}
private void unpackStructObject(ObjectInspector oi, Object o, String fName,
- ColumnStatisticsObj cStatsObj) {
+ ColumnStatisticsObj cStatsObj) throws UnsupportedDoubleException {
if (oi.getCategory() != ObjectInspector.Category.STRUCT) {
throw new RuntimeException("Invalid object datatype : " + oi.getCategory().toString());
}
@@ -351,8 +361,13 @@ public class ColumnStatsTask extends Task<ColumnStatsWork> implements Serializab
ColumnStatisticsObj statsObj = new ColumnStatisticsObj();
statsObj.setColName(colName.get(i));
statsObj.setColType(colType.get(i));
- unpackStructObject(foi, f, fieldName, statsObj);
- statsObjs.add(statsObj);
+ try {
+ unpackStructObject(foi, f, fieldName, statsObj);
+ statsObjs.add(statsObj);
+ } catch (UnsupportedDoubleException e) {
+ // due to infinity or nan.
+ LOG.info("Because " + colName.get(i) + " is infinite or NaN, we skip stats.");
+ }
}
if (!isTblLevel) {
http://git-wip-us.apache.org/repos/asf/hive/blob/8e2f1830/ql/src/test/queries/clientpositive/columnstats_infinity.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/columnstats_infinity.q b/ql/src/test/queries/clientpositive/columnstats_infinity.q
new file mode 100644
index 0000000..c99a1cb
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/columnstats_infinity.q
@@ -0,0 +1,44 @@
+set hive.stats.column.autogather=false;
+
+CREATE TABLE schema_evolution_data(insert_num int, boolean1 boolean, tinyint1 tinyint, smallint1 smallint, int1 int, bigint1 bigint, decimal1 decimal(38,18), float1 float, double1 double, string1 string, string2 string, date1 date, timestamp1 timestamp, boolean_str string, tinyint_str string, smallint_str string, int_str string, bigint_str string, decimal_str string, float_str string, double_str string, date_str string, timestamp_str string, filler string)
+row format delimited fields terminated by '|' stored as textfile;
+load data local inpath '../../data/files/schema_evolution/schema_evolution_data.txt' overwrite into table schema_evolution_data;
+
+CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data;
+
+desc formatted table_change_numeric_group_string_group_floating_string_group;
+
+analyze table table_change_numeric_group_string_group_floating_string_group compute statistics for columns;
+
+desc formatted table_change_numeric_group_string_group_floating_string_group;
+
+select insert_num,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,b from table_change_numeric_group_string_group_floating_string_group;
+
+set hive.stats.column.autogather=true;
+
+drop table table_change_numeric_group_string_group_floating_string_group;
+
+CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING);
+
+insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data;
+
+desc formatted table_change_numeric_group_string_group_floating_string_group;
+
http://git-wip-us.apache.org/repos/asf/hive/blob/8e2f1830/ql/src/test/results/clientpositive/columnstats_infinity.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/columnstats_infinity.q.out b/ql/src/test/results/clientpositive/columnstats_infinity.q.out
new file mode 100644
index 0000000..23ca486
--- /dev/null
+++ b/ql/src/test/results/clientpositive/columnstats_infinity.q.out
@@ -0,0 +1,295 @@
+PREHOOK: query: CREATE TABLE schema_evolution_data(insert_num int, boolean1 boolean, tinyint1 tinyint, smallint1 smallint, int1 int, bigint1 bigint, decimal1 decimal(38,18), float1 float, double1 double, string1 string, string2 string, date1 date, timestamp1 timestamp, boolean_str string, tinyint_str string, smallint_str string, int_str string, bigint_str string, decimal_str string, float_str string, double_str string, date_str string, timestamp_str string, filler string)
+row format delimited fields terminated by '|' stored as textfile
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@schema_evolution_data
+POSTHOOK: query: CREATE TABLE schema_evolution_data(insert_num int, boolean1 boolean, tinyint1 tinyint, smallint1 smallint, int1 int, bigint1 bigint, decimal1 decimal(38,18), float1 float, double1 double, string1 string, string2 string, date1 date, timestamp1 timestamp, boolean_str string, tinyint_str string, smallint_str string, int_str string, bigint_str string, decimal_str string, float_str string, double_str string, date_str string, timestamp_str string, filler string)
+row format delimited fields terminated by '|' stored as textfile
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@schema_evolution_data
+PREHOOK: query: load data local inpath '../../data/files/schema_evolution/schema_evolution_data.txt' overwrite into table schema_evolution_data
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: default@schema_evolution_data
+POSTHOOK: query: load data local inpath '../../data/files/schema_evolution/schema_evolution_data.txt' overwrite into table schema_evolution_data
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: default@schema_evolution_data
+PREHOOK: query: CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data
+PREHOOK: type: QUERY
+PREHOOK: Input: default@schema_evolution_data
+PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@schema_evolution_data
+POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.b SIMPLE []
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c1 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c10 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c11 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c12 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c13 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c14 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c15 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c2 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c3 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c4 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c5 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c6 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c7 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c8 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c9 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.insert_num SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:insert_num, type:int, comment:null), ]
+PREHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+# col_name data_type comment
+
+insert_num int
+c1 decimal(38,18)
+c2 float
+c3 double
+c4 decimal(38,18)
+c5 float
+c6 double
+c7 decimal(38,18)
+c8 float
+c9 double
+c10 decimal(38,18)
+c11 float
+c12 double
+c13 decimal(38,18)
+c14 float
+c15 double
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 1
+ numRows 5
+ rawDataSize 1250
+ totalSize 1255
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+InputFormat: org.apache.hadoop.mapred.TextInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: analyze table table_change_numeric_group_string_group_floating_string_group compute statistics for columns
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+#### A masked pattern was here ####
+POSTHOOK: query: analyze table table_change_numeric_group_string_group_floating_string_group compute statistics for columns
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+#### A masked pattern was here ####
+PREHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+# col_name data_type comment
+
+insert_num int
+c1 decimal(38,18)
+c2 float
+c3 double
+c4 decimal(38,18)
+c5 float
+c6 double
+c7 decimal(38,18)
+c8 float
+c9 double
+c10 decimal(38,18)
+c11 float
+c12 double
+c13 decimal(38,18)
+c14 float
+c15 double
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"c1\":\"true\",\"c10\":\"true\",\"c12\":\"true\",\"c13\":\"true\",\"c15\":\"true\",\"c3\":\"true\",\"c4\":\"true\",\"c6\":\"true\",\"c7\":\"true\",\"c9\":\"true\",\"insert_num\":\"true\"}}
+ numFiles 1
+ numRows 5
+ rawDataSize 1250
+ totalSize 1255
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+InputFormat: org.apache.hadoop.mapred.TextInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1
+PREHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,b from table_change_numeric_group_string_group_floating_string_group
+PREHOOK: type: QUERY
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+#### A masked pattern was here ####
+POSTHOOK: query: select insert_num,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,b from table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+#### A masked pattern was here ####
+101 99999999999999999999.999999999999999999 Infinity 1.7976931348623157E308 99999999999999999999.999999999999999999 Infinity 1.7976931348623157E308 99999999999999999999.999999999999999999 Infinity 1.7976931348623157E308 99999999999999999999.999999999999999999 Infinity 1.7976931348623157E308 99999999999999999999.999999999999999999 Infinity 1.7976931348623157E308 original
+102 -99999999999999999999.999999999999999999 -Infinity -1.7976931348623157E308 -99999999999999999999.999999999999999999 -Infinity -1.7976931348623157E308 -99999999999999999999.999999999999999999 -Infinity -1.7976931348623157E308 -99999999999999999999.999999999999999999 -Infinity -1.7976931348623157E308 -99999999999999999999.999999999999999999 -Infinity -1.7976931348623157E308 original
+103 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL original
+104 66475.561431000000000000 -100.35978 30.774 66475.561431000000000000 -100.35978 30.774 66475.561431000000000000 -100.35978 30.774 66475.561431000000000000 -100.35978 30.774 66475.561431000000000000 -100.35978 30.774 original
+105 9250340.750000000000000000 NULL 46114.28 9250340.750000000000000000 NULL 46114.28 9250340.750000000000000000 NULL 46114.28 9250340.750000000000000000 NULL 46114.28 9250340.750000000000000000 NULL 46114.28 original
+PREHOOK: query: drop table table_change_numeric_group_string_group_floating_string_group
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: drop table table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+PREHOOK: query: CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: CREATE TABLE table_change_numeric_group_string_group_floating_string_group(insert_num int,
+ c1 decimal(38,18), c2 float, c3 double,
+ c4 decimal(38,18), c5 float, c6 double, c7 decimal(38,18), c8 float, c9 double,
+ c10 decimal(38,18), c11 float, c12 double, c13 decimal(38,18), c14 float, c15 double,
+ b STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+PREHOOK: query: insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data
+PREHOOK: type: QUERY
+PREHOOK: Input: default@schema_evolution_data
+PREHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: insert into table table_change_numeric_group_string_group_floating_string_group SELECT insert_num,
+ decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ decimal1, float1, double1, decimal1, float1, double1,
+ 'original' FROM schema_evolution_data
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@schema_evolution_data
+POSTHOOK: Output: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.b SIMPLE []
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c1 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c10 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c11 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c12 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c13 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c14 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c15 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c2 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c3 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c4 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c5 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c6 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c7 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:decimal1, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c8 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:float1, type:float, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.c9 SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:double1, type:double, comment:null), ]
+POSTHOOK: Lineage: table_change_numeric_group_string_group_floating_string_group.insert_num SIMPLE [(schema_evolution_data)schema_evolution_data.FieldSchema(name:insert_num, type:int, comment:null), ]
+PREHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: query: desc formatted table_change_numeric_group_string_group_floating_string_group
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@table_change_numeric_group_string_group_floating_string_group
+# col_name data_type comment
+
+insert_num int
+c1 decimal(38,18)
+c2 float
+c3 double
+c4 decimal(38,18)
+c5 float
+c6 double
+c7 decimal(38,18)
+c8 float
+c9 double
+c10 decimal(38,18)
+c11 float
+c12 double
+c13 decimal(38,18)
+c14 float
+c15 double
+b string
+
+# Detailed Table Information
+Database: default
+#### A masked pattern was here ####
+Retention: 0
+#### A masked pattern was here ####
+Table Type: MANAGED_TABLE
+Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"c1\":\"true\",\"c10\":\"true\",\"c12\":\"true\",\"c13\":\"true\",\"c15\":\"true\",\"c3\":\"true\",\"c4\":\"true\",\"c6\":\"true\",\"c7\":\"true\",\"c9\":\"true\",\"insert_num\":\"true\"}}
+ numFiles 1
+ numRows 5
+ rawDataSize 1250
+ totalSize 1255
+#### A masked pattern was here ####
+
+# Storage Information
+SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+InputFormat: org.apache.hadoop.mapred.TextInputFormat
+OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+Compressed: No
+Num Buckets: -1
+Bucket Columns: []
+Sort Columns: []
+Storage Desc Params:
+ serialization.format 1