You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2017/03/08 01:32:37 UTC
[1/3] hive git commit: HIVE-16098 : Describe table doesn't show stats
for partitioned tables (Ashutosh Chauhan via Pengcheng Xiong)
Repository: hive
Updated Branches:
refs/heads/master daa8e2418 -> 45b48d5fd
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/orc_create.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/orc_create.q.out b/ql/src/test/results/clientpositive/llap/orc_create.q.out
index 1ae93c6..078f83e 100644
--- a/ql/src/test/results/clientpositive/llap/orc_create.q.out
+++ b/ql/src/test/results/clientpositive/llap/orc_create.q.out
@@ -121,6 +121,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -174,6 +179,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -217,6 +227,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -270,6 +286,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/schema_evol_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/schema_evol_stats.q.out b/ql/src/test/results/clientpositive/llap/schema_evol_stats.q.out
index be8ca4a..906e5e8 100644
--- a/ql/src/test/results/clientpositive/llap/schema_evol_stats.q.out
+++ b/ql/src/test/results/clientpositive/llap/schema_evol_stats.q.out
@@ -69,6 +69,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 2
+ numRows 8
+ rawDataSize 96
+ totalSize 104
#### A masked pattern was here ####
# Storage Information
@@ -263,6 +269,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 2
+ numRows 8
+ rawDataSize 1116
+ totalSize 819
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/stats_noscan_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/stats_noscan_1.q.out b/ql/src/test/results/clientpositive/llap/stats_noscan_1.q.out
index 2fba3e2..d079c0b 100644
--- a/ql/src/test/results/clientpositive/llap/stats_noscan_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/stats_noscan_1.q.out
@@ -244,6 +244,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/parquet_mixed_partition_formats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/parquet_mixed_partition_formats.q.out b/ql/src/test/results/clientpositive/parquet_mixed_partition_formats.q.out
index 20fcb93..bbd7553 100644
--- a/ql/src/test/results/clientpositive/parquet_mixed_partition_formats.q.out
+++ b/ql/src/test/results/clientpositive/parquet_mixed_partition_formats.q.out
@@ -194,6 +194,11 @@ Retention: 0
Table Type: MANAGED_TABLE
Table Parameters:
#### A masked pattern was here ####
+ numFiles 1
+ numRows 0
+ rawDataSize 0
+ totalSize 2521
+#### A masked pattern was here ####
# Storage Information
SerDe Library: org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/parquet_partitioned.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/parquet_partitioned.q.out b/ql/src/test/results/clientpositive/parquet_partitioned.q.out
index 7eace7d..35298e5 100644
--- a/ql/src/test/results/clientpositive/parquet_partitioned.q.out
+++ b/ql/src/test/results/clientpositive/parquet_partitioned.q.out
@@ -63,6 +63,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/parquet_serde.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/parquet_serde.q.out b/ql/src/test/results/clientpositive/parquet_serde.q.out
index 43c9bd0..9aac903 100644
--- a/ql/src/test/results/clientpositive/parquet_serde.q.out
+++ b/ql/src/test/results/clientpositive/parquet_serde.q.out
@@ -131,6 +131,11 @@ Retention: 0
Table Type: MANAGED_TABLE
Table Parameters:
#### A masked pattern was here ####
+ numFiles 1
+ numRows 0
+ rawDataSize 0
+ totalSize 36
+#### A masked pattern was here ####
# Storage Information
SerDe Library: org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/partial_column_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/partial_column_stats.q.out b/ql/src/test/results/clientpositive/partial_column_stats.q.out
index 59b52b0..f204a18 100644
--- a/ql/src/test/results/clientpositive/partial_column_stats.q.out
+++ b/ql/src/test/results/clientpositive/partial_column_stats.q.out
@@ -72,3 +72,4 @@ POSTHOOK: Input: default@t1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 0 0.0 0 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/partition_coltype_literals.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/partition_coltype_literals.q.out b/ql/src/test/results/clientpositive/partition_coltype_literals.q.out
index fad937d..3affc94 100644
--- a/ql/src/test/results/clientpositive/partition_coltype_literals.q.out
+++ b/ql/src/test/results/clientpositive/partition_coltype_literals.q.out
@@ -314,6 +314,36 @@ POSTHOOK: Input: default@partcoltypenum
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 18 6.766666666666667 7 from deserializer
+PREHOOK: query: describe formatted partcoltypenum tint
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@partcoltypenum
+POSTHOOK: query: describe formatted partcoltypenum tint
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@partcoltypenum
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+tint tinyint 110 110 0 1
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"tint\":\"true\"}}
+PREHOOK: query: describe formatted partcoltypenum sint
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@partcoltypenum
+POSTHOOK: query: describe formatted partcoltypenum sint
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@partcoltypenum
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+sint smallint 22000 22000 0 1
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"sint\":\"true\"}}
+PREHOOK: query: describe formatted partcoltypenum bint
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@partcoltypenum
+POSTHOOK: query: describe formatted partcoltypenum bint
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@partcoltypenum
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+bint bigint 330000000000 330000000000 0 1
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"bint\":\"true\"}}
PREHOOK: query: alter table partcoltypenum change key key decimal(10,0)
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: default@partcoltypenum
@@ -422,6 +452,16 @@ Bucket Columns: []
Sort Columns: []
Storage Desc Params:
serialization.format 1
+PREHOOK: query: describe formatted partcoltypenum tint
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@partcoltypenum
+POSTHOOK: query: describe formatted partcoltypenum tint
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@partcoltypenum
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+tint decimal(3,0) 110 110 0 1
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"tint\":\"true\"}}
PREHOOK: query: show partitions partcoltypenum partition (tint=110BD, sint=22000S, bint=330000000000L)
PREHOOK: type: SHOWPARTITIONS
PREHOOK: Input: default@partcoltypenum
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/rename_table_update_column_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/rename_table_update_column_stats.q.out b/ql/src/test/results/clientpositive/rename_table_update_column_stats.q.out
index c025cfa..b3d6f03 100644
--- a/ql/src/test/results/clientpositive/rename_table_update_column_stats.q.out
+++ b/ql/src/test/results/clientpositive/rename_table_update_column_stats.q.out
@@ -60,6 +60,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -69,6 +70,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -78,6 +80,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: alter table statsdb1.testtable1 rename to statsdb2.testtable2
PREHOOK: type: ALTERTABLE_RENAME
PREHOOK: Input: statsdb1@testtable1
@@ -96,6 +99,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb2.testtable2 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb2@testtable2
@@ -105,6 +109,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb2.testtable2 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb2@testtable2
@@ -114,6 +119,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: use default
PREHOOK: type: SWITCHDATABASE
PREHOOK: Input: database:default
@@ -200,6 +206,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -209,6 +216,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -218,6 +226,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: alter table statsdb1.testtable1 rename to statsdb2.testtable2
PREHOOK: type: ALTERTABLE_RENAME
PREHOOK: Input: statsdb1@testtable1
@@ -236,6 +245,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb2.testtable2 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb2@testtable2
@@ -245,6 +255,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb2.testtable2 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb2@testtable2
@@ -254,6 +265,7 @@ POSTHOOK: Input: statsdb2@testtable2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: use default
PREHOOK: type: SWITCHDATABASE
PREHOOK: Input: database:default
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/avro_decimal_native.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/avro_decimal_native.q.out b/ql/src/test/results/clientpositive/spark/avro_decimal_native.q.out
index cebc342..c31e12a 100644
--- a/ql/src/test/results/clientpositive/spark/avro_decimal_native.q.out
+++ b/ql/src/test/results/clientpositive/spark/avro_decimal_native.q.out
@@ -39,6 +39,7 @@ POSTHOOK: Input: default@dec
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value decimal(8,4) -12.25 234.79 0 6 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"value\":\"true\"}}
PREHOOK: query: DROP TABLE IF EXISTS avro_dec
PREHOOK: type: DROPTABLE
POSTHOOK: query: DROP TABLE IF EXISTS avro_dec
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats10.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats10.q.out b/ql/src/test/results/clientpositive/spark/stats10.q.out
index a0c5d40..0cbbb07 100644
--- a/ql/src/test/results/clientpositive/spark/stats10.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats10.q.out
@@ -502,6 +502,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 11624
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats12.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats12.q.out b/ql/src/test/results/clientpositive/spark/stats12.q.out
index f7cdab9..03d64f2 100644
--- a/ql/src/test/results/clientpositive/spark/stats12.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats12.q.out
@@ -196,6 +196,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats13.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats13.q.out b/ql/src/test/results/clientpositive/spark/stats13.q.out
index 304a488..437dd7c 100644
--- a/ql/src/test/results/clientpositive/spark/stats13.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats13.q.out
@@ -146,6 +146,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -341,6 +345,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats14.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats14.q.out b/ql/src/test/results/clientpositive/spark/stats14.q.out
index e8fe776..b466fe6 100644
--- a/ql/src/test/results/clientpositive/spark/stats14.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats14.q.out
@@ -145,6 +145,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
@@ -281,6 +286,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats15.q.out b/ql/src/test/results/clientpositive/spark/stats15.q.out
index e8fe776..b466fe6 100644
--- a/ql/src/test/results/clientpositive/spark/stats15.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats15.q.out
@@ -145,6 +145,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
@@ -281,6 +286,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats2.q.out b/ql/src/test/results/clientpositive/spark/stats2.q.out
index 404e34b..7c44646 100644
--- a/ql/src/test/results/clientpositive/spark/stats2.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats2.q.out
@@ -103,6 +103,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -185,6 +189,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats3.q.out b/ql/src/test/results/clientpositive/spark/stats3.q.out
index 14eaf78..7e9eda3 100644
--- a/ql/src/test/results/clientpositive/spark/stats3.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats3.q.out
@@ -220,6 +220,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 1
+ numRows 6
+ rawDataSize 6
+ totalSize 171
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats6.q.out b/ql/src/test/results/clientpositive/spark/stats6.q.out
index f2a756f..613ac58 100644
--- a/ql/src/test/results/clientpositive/spark/stats6.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats6.q.out
@@ -235,6 +235,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats7.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats7.q.out b/ql/src/test/results/clientpositive/spark/stats7.q.out
index 3df7f06..a782fe5 100644
--- a/ql/src/test/results/clientpositive/spark/stats7.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats7.q.out
@@ -175,6 +175,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats8.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats8.q.out b/ql/src/test/results/clientpositive/spark/stats8.q.out
index dc8b5c1..3cc60b3 100644
--- a/ql/src/test/results/clientpositive/spark/stats8.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats8.q.out
@@ -131,6 +131,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -595,6 +599,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/stats_noscan_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/stats_noscan_1.q.out b/ql/src/test/results/clientpositive/spark/stats_noscan_1.q.out
index 9e1652b..ec46fa1 100644
--- a/ql/src/test/results/clientpositive/spark/stats_noscan_1.q.out
+++ b/ql/src/test/results/clientpositive/spark/stats_noscan_1.q.out
@@ -244,6 +244,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/union_remove_15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/union_remove_15.q.out b/ql/src/test/results/clientpositive/spark/union_remove_15.q.out
index 658edea..39ac11f 100644
--- a/ql/src/test/results/clientpositive/spark/union_remove_15.q.out
+++ b/ql/src/test/results/clientpositive/spark/union_remove_15.q.out
@@ -174,6 +174,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 336
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/union_remove_16.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/union_remove_16.q.out b/ql/src/test/results/clientpositive/spark/union_remove_16.q.out
index 6ddc9e2..7b81398 100644
--- a/ql/src/test/results/clientpositive/spark/union_remove_16.q.out
+++ b/ql/src/test/results/clientpositive/spark/union_remove_16.q.out
@@ -216,6 +216,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 336
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/union_remove_17.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/union_remove_17.q.out b/ql/src/test/results/clientpositive/spark/union_remove_17.q.out
index 3f16384..a4d4b7c 100644
--- a/ql/src/test/results/clientpositive/spark/union_remove_17.q.out
+++ b/ql/src/test/results/clientpositive/spark/union_remove_17.q.out
@@ -152,6 +152,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 2
+ numRows 0
+ rawDataSize 0
+ totalSize 182
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/spark/union_remove_18.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/union_remove_18.q.out b/ql/src/test/results/clientpositive/spark/union_remove_18.q.out
index 87d3eca..f07efdb 100644
--- a/ql/src/test/results/clientpositive/spark/union_remove_18.q.out
+++ b/ql/src/test/results/clientpositive/spark/union_remove_18.q.out
@@ -186,6 +186,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 12
+ numRows 0
+ rawDataSize 0
+ totalSize 48
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats10.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats10.q.out b/ql/src/test/results/clientpositive/stats10.q.out
index d7519af..b1fba31 100644
--- a/ql/src/test/results/clientpositive/stats10.q.out
+++ b/ql/src/test/results/clientpositive/stats10.q.out
@@ -493,6 +493,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 11624
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats12.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats12.q.out b/ql/src/test/results/clientpositive/stats12.q.out
index 9d13315..5a0bb4c 100644
--- a/ql/src/test/results/clientpositive/stats12.q.out
+++ b/ql/src/test/results/clientpositive/stats12.q.out
@@ -193,6 +193,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats13.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats13.q.out b/ql/src/test/results/clientpositive/stats13.q.out
index cb90c35..70523e6 100644
--- a/ql/src/test/results/clientpositive/stats13.q.out
+++ b/ql/src/test/results/clientpositive/stats13.q.out
@@ -143,6 +143,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -338,6 +342,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats14.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats14.q.out b/ql/src/test/results/clientpositive/stats14.q.out
index e8fe776..b466fe6 100644
--- a/ql/src/test/results/clientpositive/stats14.q.out
+++ b/ql/src/test/results/clientpositive/stats14.q.out
@@ -145,6 +145,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
@@ -281,6 +286,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats15.q.out b/ql/src/test/results/clientpositive/stats15.q.out
index e8fe776..b466fe6 100644
--- a/ql/src/test/results/clientpositive/stats15.q.out
+++ b/ql/src/test/results/clientpositive/stats15.q.out
@@ -145,6 +145,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
@@ -281,6 +286,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 3
+ numRows 1500
+ rawDataSize 15936
+ totalSize 17436
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats2.q.out b/ql/src/test/results/clientpositive/stats2.q.out
index ac1d5cb..a52e582 100644
--- a/ql/src/test/results/clientpositive/stats2.q.out
+++ b/ql/src/test/results/clientpositive/stats2.q.out
@@ -100,6 +100,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -179,6 +183,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats3.q.out b/ql/src/test/results/clientpositive/stats3.q.out
index 14eaf78..7e9eda3 100644
--- a/ql/src/test/results/clientpositive/stats3.q.out
+++ b/ql/src/test/results/clientpositive/stats3.q.out
@@ -220,6 +220,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 1
+ numRows 6
+ rawDataSize 6
+ totalSize 171
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats4.q.out b/ql/src/test/results/clientpositive/stats4.q.out
index 6105017..247cc96 100644
--- a/ql/src/test/results/clientpositive/stats4.q.out
+++ b/ql/src/test/results/clientpositive/stats4.q.out
@@ -2466,6 +2466,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 2
+ numRows 1000
+ rawDataSize 10624
+ totalSize 11624
#### A masked pattern was here ####
# Storage Information
@@ -2502,6 +2507,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 2
+ numRows 1000
+ rawDataSize 10624
+ totalSize 11624
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats6.q.out b/ql/src/test/results/clientpositive/stats6.q.out
index f2a756f..613ac58 100644
--- a/ql/src/test/results/clientpositive/stats6.q.out
+++ b/ql/src/test/results/clientpositive/stats6.q.out
@@ -235,6 +235,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats7.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats7.q.out b/ql/src/test/results/clientpositive/stats7.q.out
index 86adcea..b7946ea 100644
--- a/ql/src/test/results/clientpositive/stats7.q.out
+++ b/ql/src/test/results/clientpositive/stats7.q.out
@@ -172,6 +172,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 1000
+ rawDataSize 10624
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats8.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats8.q.out b/ql/src/test/results/clientpositive/stats8.q.out
index 7c8ce8c..636925f 100644
--- a/ql/src/test/results/clientpositive/stats8.q.out
+++ b/ql/src/test/results/clientpositive/stats8.q.out
@@ -128,6 +128,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -580,6 +584,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/stats_noscan_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/stats_noscan_1.q.out b/ql/src/test/results/clientpositive/stats_noscan_1.q.out
index 9e1652b..ec46fa1 100644
--- a/ql/src/test/results/clientpositive/stats_noscan_1.q.out
+++ b/ql/src/test/results/clientpositive/stats_noscan_1.q.out
@@ -244,6 +244,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 4
+ numRows 0
+ rawDataSize 0
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/unicode_comments.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/unicode_comments.q.out b/ql/src/test/results/clientpositive/unicode_comments.q.out
index ae50c67..273394b 100644
--- a/ql/src/test/results/clientpositive/unicode_comments.q.out
+++ b/ql/src/test/results/clientpositive/unicode_comments.q.out
@@ -92,7 +92,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
comment \u8868\u683c
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/union_remove_15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/union_remove_15.q.out b/ql/src/test/results/clientpositive/union_remove_15.q.out
index 8109837..08c77c2 100644
--- a/ql/src/test/results/clientpositive/union_remove_15.q.out
+++ b/ql/src/test/results/clientpositive/union_remove_15.q.out
@@ -190,6 +190,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 2
+ numRows 0
+ rawDataSize 0
+ totalSize 178
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/union_remove_16.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/union_remove_16.q.out b/ql/src/test/results/clientpositive/union_remove_16.q.out
index e8f3e47..19bd3e7 100644
--- a/ql/src/test/results/clientpositive/union_remove_16.q.out
+++ b/ql/src/test/results/clientpositive/union_remove_16.q.out
@@ -224,6 +224,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 2
+ numRows 0
+ rawDataSize 0
+ totalSize 178
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/union_remove_17.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/union_remove_17.q.out b/ql/src/test/results/clientpositive/union_remove_17.q.out
index e1c1692..e5951dc 100644
--- a/ql/src/test/results/clientpositive/union_remove_17.q.out
+++ b/ql/src/test/results/clientpositive/union_remove_17.q.out
@@ -151,6 +151,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 2
+ numRows 0
+ rawDataSize 0
+ totalSize 182
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/union_remove_18.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/union_remove_18.q.out b/ql/src/test/results/clientpositive/union_remove_18.q.out
index 8c3ccb4..53ac25e 100644
--- a/ql/src/test/results/clientpositive/union_remove_18.q.out
+++ b/ql/src/test/results/clientpositive/union_remove_18.q.out
@@ -202,6 +202,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 12
+ numRows 0
+ rawDataSize 0
+ totalSize 48
#### A masked pattern was here ####
# Storage Information
[2/3] hive git commit: HIVE-16098 : Describe table doesn't show stats
for partitioned tables (Ashutosh Chauhan via Pengcheng Xiong)
Posted by ha...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/autoColumnStats_9.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/autoColumnStats_9.q.out b/ql/src/test/results/clientpositive/autoColumnStats_9.q.out
index a90d180..d26e2c0 100644
--- a/ql/src/test/results/clientpositive/autoColumnStats_9.q.out
+++ b/ql/src/test/results/clientpositive/autoColumnStats_9.q.out
@@ -253,6 +253,7 @@ POSTHOOK: Input: default@dest_j1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key int 0 498 0 196 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: desc formatted dest_j1 value
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@dest_j1
@@ -262,3 +263,4 @@ POSTHOOK: Input: default@dest_j1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 214 6.834630350194552 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/avro_decimal.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/avro_decimal.q.out b/ql/src/test/results/clientpositive/avro_decimal.q.out
index 64e65ca..215f39a 100644
--- a/ql/src/test/results/clientpositive/avro_decimal.q.out
+++ b/ql/src/test/results/clientpositive/avro_decimal.q.out
@@ -35,6 +35,7 @@ POSTHOOK: Input: default@dec
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value decimal(8,4) -12.25 234.79 0 6 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"value\":\"true\"}}
PREHOOK: query: DROP TABLE IF EXISTS avro_dec
PREHOOK: type: DROPTABLE
POSTHOOK: query: DROP TABLE IF EXISTS avro_dec
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/avro_decimal_native.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/avro_decimal_native.q.out b/ql/src/test/results/clientpositive/avro_decimal_native.q.out
index cebc342..c31e12a 100644
--- a/ql/src/test/results/clientpositive/avro_decimal_native.q.out
+++ b/ql/src/test/results/clientpositive/avro_decimal_native.q.out
@@ -39,6 +39,7 @@ POSTHOOK: Input: default@dec
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value decimal(8,4) -12.25 234.79 0 6 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"value\":\"true\"}}
PREHOOK: query: DROP TABLE IF EXISTS avro_dec
PREHOOK: type: DROPTABLE
POSTHOOK: query: DROP TABLE IF EXISTS avro_dec
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/avro_schema_evolution_native.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/avro_schema_evolution_native.q.out b/ql/src/test/results/clientpositive/avro_schema_evolution_native.q.out
index c92c751..cd6ab4e 100644
--- a/ql/src/test/results/clientpositive/avro_schema_evolution_native.q.out
+++ b/ql/src/test/results/clientpositive/avro_schema_evolution_native.q.out
@@ -103,6 +103,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 7
+ numRows 8
+ rawDataSize 0
+ totalSize 3077
#### A masked pattern was here ####
# Storage Information
@@ -209,6 +214,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 7
+ numRows 8
+ rawDataSize 0
+ totalSize 3077
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/beeline/escape_comments.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/beeline/escape_comments.q.out b/ql/src/test/results/clientpositive/beeline/escape_comments.q.out
index 0cbc8d6..5f9df93 100644
--- a/ql/src/test/results/clientpositive/beeline/escape_comments.q.out
+++ b/ql/src/test/results/clientpositive/beeline/escape_comments.q.out
@@ -227,7 +227,12 @@ Shutting down query describe formatted escape_comments_tbl1
'Location: ','!!{hive.metastore.warehouse.dir}!!/escape_comments_db.db/escape_comments_tbl1','NULL'
'Table Type: ','MANAGED_TABLE ','NULL'
'Table Parameters:','NULL','NULL'
+'','COLUMN_STATS_ACCURATE','{\"BASIC_STATS\":\"true\"}'
'','comment ','a\nb '
+'','numFiles ','0 '
+'','numRows ','0 '
+'','rawDataSize ','0 '
+'','totalSize ','0 '
'','transient_lastDdlTime','!!UNIXTIME!! '
'','NULL','NULL'
'# Storage Information','NULL','NULL'
@@ -240,7 +245,7 @@ Shutting down query describe formatted escape_comments_tbl1
'Sort Columns: ','[] ','NULL'
'Storage Desc Params:','NULL','NULL'
'','serialization.format','1 '
-31 rows selected
+36 rows selected
>>> describe pretty escape_comments_tbl1;
Acquired the compile lock.
Compiling commandqueryId=(!!{queryId}!!): describe pretty escape_comments_tbl1
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/colstats_all_nulls.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/colstats_all_nulls.q.out b/ql/src/test/results/clientpositive/colstats_all_nulls.q.out
index f67f81b..14c5d5b 100644
--- a/ql/src/test/results/clientpositive/colstats_all_nulls.q.out
+++ b/ql/src/test/results/clientpositive/colstats_all_nulls.q.out
@@ -44,6 +44,7 @@ POSTHOOK: Input: default@all_nulls
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
a bigint 0 0 5 1 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\",\"c\":\"true\"}}
PREHOOK: query: describe formatted all_nulls b
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@all_nulls
@@ -53,6 +54,7 @@ POSTHOOK: Input: default@all_nulls
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
b double 0.0 0.0 5 1 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\",\"c\":\"true\"}}
PREHOOK: query: drop table all_nulls
PREHOOK: type: DROPTABLE
PREHOOK: Input: default@all_nulls
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/columnstats_partlvl.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/columnstats_partlvl.q.out b/ql/src/test/results/clientpositive/columnstats_partlvl.q.out
index 5c9f901..c5bfafb 100644
--- a/ql/src/test/results/clientpositive/columnstats_partlvl.q.out
+++ b/ql/src/test/results/clientpositive/columnstats_partlvl.q.out
@@ -682,6 +682,7 @@ POSTHOOK: Input: default@employee_part
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
employeeID int 16 34 2 14 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"employeeid\":\"true\",\"employeename\":\"true\"}}
PREHOOK: query: create database if not exists dummydb
PREHOOK: type: CREATEDATABASE
PREHOOK: Output: database:dummydb
@@ -713,6 +714,7 @@ POSTHOOK: Input: default@employee_part
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
employeeID int 16 34 1 14 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"employeeid\":\"true\",\"employeename\":\"true\"}}
PREHOOK: query: analyze table default.Employee_Part compute statistics for columns
PREHOOK: type: QUERY
PREHOOK: Input: default@employee_part
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out b/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out
index 60652e0..e8aaf8a 100644
--- a/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out
+++ b/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out
@@ -288,6 +288,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
destURL string 0 56 48.945454545454545 96 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: describe formatted UserVisits_web_text_none adRevenue
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@uservisits_web_text_none
@@ -297,6 +298,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
adRevenue float 13.099044799804688 492.98870849609375 0 58 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: describe formatted UserVisits_web_text_none avgTimeOnSite
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@uservisits_web_text_none
@@ -306,6 +308,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
avgTimeOnSite int 1 9 0 11 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: CREATE TABLE empty_tab(
a int,
b double,
@@ -414,6 +417,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
destURL string 0 56 48.945454545454545 96 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: CREATE TABLE UserVisits_in_dummy_db (
sourceIP string,
destURL string,
@@ -706,6 +710,7 @@ POSTHOOK: Input: dummydb@uservisits_in_dummy_db
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
destURL string 0 56 48.945454545454545 96 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: describe formatted dummydb.UserVisits_in_dummy_db adRevenue
PREHOOK: type: DESCTABLE
PREHOOK: Input: dummydb@uservisits_in_dummy_db
@@ -715,6 +720,7 @@ POSTHOOK: Input: dummydb@uservisits_in_dummy_db
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
adRevenue float 13.099044799804688 492.98870849609375 0 58 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: describe formatted dummydb.UserVisits_in_dummy_db avgTimeOnSite
PREHOOK: type: DESCTABLE
PREHOOK: Input: dummydb@uservisits_in_dummy_db
@@ -724,6 +730,7 @@ POSTHOOK: Input: dummydb@uservisits_in_dummy_db
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
avgTimeOnSite int 1 9 0 11 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"ccode\":\"true\",\"desturl\":\"true\",\"lcode\":\"true\",\"skeyword\":\"true\",\"sourceip\":\"true\",\"useragent\":\"true\",\"visitdate\":\"true\"}}
PREHOOK: query: drop table dummydb.UserVisits_in_dummy_db
PREHOOK: type: DROPTABLE
PREHOOK: Input: dummydb@uservisits_in_dummy_db
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/compustat_avro.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/compustat_avro.q.out b/ql/src/test/results/clientpositive/compustat_avro.q.out
index 50c03bd..016b8e7 100644
--- a/ql/src/test/results/clientpositive/compustat_avro.q.out
+++ b/ql/src/test/results/clientpositive/compustat_avro.q.out
@@ -33,6 +33,7 @@ POSTHOOK: Input: default@testavro
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: analyze table testAvro compute statistics for columns col1,col3
PREHOOK: type: QUERY
PREHOOK: Input: default@testavro
@@ -50,3 +51,4 @@ POSTHOOK: Input: default@testavro
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 string 0 0 0.0 0 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col3\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/compute_stats_date.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/compute_stats_date.q.out b/ql/src/test/results/clientpositive/compute_stats_date.q.out
index 73f08ad..c247237 100644
--- a/ql/src/test/results/clientpositive/compute_stats_date.q.out
+++ b/ql/src/test/results/clientpositive/compute_stats_date.q.out
@@ -112,6 +112,7 @@ POSTHOOK: Input: default@tab_date
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
fl_date date 2000-11-20 2010-10-29 0 18 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"fl_date\":\"true\"}}
PREHOOK: query: alter table tab_date update statistics for column fl_date set ('numDVs'='19', 'highValue'='2015-01-01', 'lowValue'='0')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: alter table tab_date update statistics for column fl_date set ('numDVs'='19', 'highValue'='2015-01-01', 'lowValue'='0')
@@ -125,3 +126,4 @@ POSTHOOK: Input: default@tab_date
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
fl_date date 1970-01-01 2015-01-01 0 19 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"fl_date\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/confirm_initial_tbl_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/confirm_initial_tbl_stats.q.out b/ql/src/test/results/clientpositive/confirm_initial_tbl_stats.q.out
index f0d8ff2..faa14ba 100644
--- a/ql/src/test/results/clientpositive/confirm_initial_tbl_stats.q.out
+++ b/ql/src/test/results/clientpositive/confirm_initial_tbl_stats.q.out
@@ -17,6 +17,7 @@ POSTHOOK: Input: default@src
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe extended src1
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src1
@@ -36,6 +37,7 @@ POSTHOOK: Input: default@src1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 14 4.92 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe extended src_json
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_json
@@ -54,6 +56,7 @@ POSTHOOK: Input: default@src_json
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
json string 0 1 644.0 644 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"json\":\"true\"}}
PREHOOK: query: describe extended src_sequencefile
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_sequencefile
@@ -73,6 +76,7 @@ POSTHOOK: Input: default@src_sequencefile
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 214 6.812 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe extended srcbucket
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@srcbucket
@@ -92,6 +96,7 @@ POSTHOOK: Input: default@srcbucket
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 234 6.802 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe extended srcbucket2
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@srcbucket2
@@ -111,6 +116,7 @@ POSTHOOK: Input: default@srcbucket2
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 214 6.812 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe extended srcpart
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@srcpart
@@ -167,6 +173,7 @@ POSTHOOK: Input: default@alltypesorc
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
ctinyint tinyint -64 62 3115 94 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"cbigint\":\"true\",\"cboolean1\":\"true\",\"cboolean2\":\"true\",\"cdouble\":\"true\",\"cfloat\":\"true\",\"cint\":\"true\",\"csmallint\":\"true\",\"cstring1\":\"true\",\"cstring2\":\"true\",\"ctimestamp1\":\"true\",\"ctimestamp2\":\"true\",\"ctinyint\":\"true\"}}
PREHOOK: query: describe formatted alltypesorc cfloat
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@alltypesorc
@@ -176,6 +183,7 @@ POSTHOOK: Input: default@alltypesorc
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
cfloat float -64.0 79.5530014038086 3115 117 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"cbigint\":\"true\",\"cboolean1\":\"true\",\"cboolean2\":\"true\",\"cdouble\":\"true\",\"cfloat\":\"true\",\"cint\":\"true\",\"csmallint\":\"true\",\"cstring1\":\"true\",\"cstring2\":\"true\",\"ctimestamp1\":\"true\",\"ctimestamp2\":\"true\",\"ctinyint\":\"true\"}}
PREHOOK: query: describe formatted alltypesorc ctimestamp1
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@alltypesorc
@@ -185,6 +193,7 @@ POSTHOOK: Input: default@alltypesorc
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
ctimestamp1 timestamp -30 31 3115 31 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"cbigint\":\"true\",\"cboolean1\":\"true\",\"cboolean2\":\"true\",\"cdouble\":\"true\",\"cfloat\":\"true\",\"cint\":\"true\",\"csmallint\":\"true\",\"cstring1\":\"true\",\"cstring2\":\"true\",\"ctimestamp1\":\"true\",\"ctimestamp2\":\"true\",\"ctinyint\":\"true\"}}
PREHOOK: query: describe formatted alltypesorc cboolean2
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@alltypesorc
@@ -194,3 +203,4 @@ POSTHOOK: Input: default@alltypesorc
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
cboolean2 boolean 3115 3983 5190 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"cbigint\":\"true\",\"cboolean1\":\"true\",\"cboolean2\":\"true\",\"cdouble\":\"true\",\"cfloat\":\"true\",\"cint\":\"true\",\"csmallint\":\"true\",\"cstring1\":\"true\",\"cstring2\":\"true\",\"ctimestamp1\":\"true\",\"ctimestamp2\":\"true\",\"ctinyint\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/create_like_view.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/create_like_view.q.out b/ql/src/test/results/clientpositive/create_like_view.q.out
index 9e6dcd1..9dd714f 100644
--- a/ql/src/test/results/clientpositive/create_like_view.q.out
+++ b/ql/src/test/results/clientpositive/create_like_view.q.out
@@ -295,6 +295,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/create_or_replace_view.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/create_or_replace_view.q.out b/ql/src/test/results/clientpositive/create_or_replace_view.q.out
index 98e0ca2..bc5bd06 100644
--- a/ql/src/test/results/clientpositive/create_or_replace_view.q.out
+++ b/ql/src/test/results/clientpositive/create_or_replace_view.q.out
@@ -126,6 +126,11 @@ Database: vt
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -218,6 +223,11 @@ Database: vt
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -287,6 +297,11 @@ Database: vt
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -379,6 +394,11 @@ Database: vt
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/create_table_like_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/create_table_like_stats.q.out b/ql/src/test/results/clientpositive/create_table_like_stats.q.out
index 97ee25a..5dc0b88 100644
--- a/ql/src/test/results/clientpositive/create_table_like_stats.q.out
+++ b/ql/src/test/results/clientpositive/create_table_like_stats.q.out
@@ -139,6 +139,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -191,6 +196,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/create_view_partitioned.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/create_view_partitioned.q.out b/ql/src/test/results/clientpositive/create_view_partitioned.q.out
index 46a81c4..00bdeb2 100644
--- a/ql/src/test/results/clientpositive/create_view_partitioned.q.out
+++ b/ql/src/test/results/clientpositive/create_view_partitioned.q.out
@@ -71,6 +71,11 @@ Database: default
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -266,6 +271,11 @@ Database: default
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -377,6 +387,11 @@ Database: default
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/decimal_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/decimal_stats.q.out b/ql/src/test/results/clientpositive/decimal_stats.q.out
index cb02f76..5d86866 100644
--- a/ql/src/test/results/clientpositive/decimal_stats.q.out
+++ b/ql/src/test/results/clientpositive/decimal_stats.q.out
@@ -49,6 +49,7 @@ POSTHOOK: Input: default@decimal_1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
v decimal(10,0) 500 1 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"t\":\"true\",\"u\":\"true\",\"v\":\"true\"}}
PREHOOK: query: explain select * from decimal_1 order by t limit 100
PREHOOK: type: QUERY
POSTHOOK: query: explain select * from decimal_1 order by t limit 100
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/describe_syntax.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/describe_syntax.q.out b/ql/src/test/results/clientpositive/describe_syntax.q.out
index 34f0816..67ae6eb 100644
--- a/ql/src/test/results/clientpositive/describe_syntax.q.out
+++ b/ql/src/test/results/clientpositive/describe_syntax.q.out
@@ -97,6 +97,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -167,6 +172,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -202,6 +212,7 @@ POSTHOOK: Input: db1@t1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key1 int from deserializer
+COLUMN_STATS_ACCURATE {}
PREHOOK: query: DESCRIBE db1.t1 key1
PREHOOK: type: DESCTABLE
PREHOOK: Input: db1@t1
@@ -225,6 +236,7 @@ POSTHOOK: Input: db1@t1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key1 int from deserializer
+COLUMN_STATS_ACCURATE {}
PREHOOK: query: DESCRIBE t1 key1
PREHOOK: type: DESCTABLE
PREHOOK: Input: db1@t1
@@ -248,6 +260,7 @@ POSTHOOK: Input: db1@t1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key1 int from deserializer
+COLUMN_STATS_ACCURATE {}
PREHOOK: query: DESCRIBE t1 PARTITION(ds='4', part='5')
PREHOOK: type: DESCTABLE
PREHOOK: Input: db1@t1
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/describe_table.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/describe_table.q.out b/ql/src/test/results/clientpositive/describe_table.q.out
index ad3bfc1..3adf8a9 100644
--- a/ql/src/test/results/clientpositive/describe_table.q.out
+++ b/ql/src/test/results/clientpositive/describe_table.q.out
@@ -186,6 +186,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -206,7 +211,8 @@ POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@srcpart
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
-key string from deserializer
+key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: describe formatted srcpart PARTITION(ds='2008-04-08', hr='12')
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@srcpart
@@ -271,6 +277,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 4
+ numRows 2000
+ rawDataSize 21248
+ totalSize 23248
#### A masked pattern was here ####
# Storage Information
@@ -291,7 +302,8 @@ POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@srcpart
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
-key string from deserializer
+key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: describe formatted `srcpart` PARTITION(ds='2008-04-08', hr='12')
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@srcpart
@@ -332,6 +344,26 @@ Bucket Columns: []
Sort Columns: []
Storage Desc Params:
serialization.format 1
+PREHOOK: query: describe formatted `srcpart` `ds`
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@srcpart
+POSTHOOK: query: describe formatted `srcpart` `ds`
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@srcpart
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+ds string 0 2 100.0 100
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"ds\":\"true\"}}
+PREHOOK: query: describe formatted `srcpart` `hr`
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: default@srcpart
+POSTHOOK: query: describe formatted `srcpart` `hr`
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: default@srcpart
+# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
+
+hr string 0 2 100.0 100
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"hr\":\"true\"}}
PREHOOK: query: create table srcpart_serdeprops like srcpart
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
@@ -396,6 +428,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -531,6 +569,7 @@ POSTHOOK: query: DESCRIBE name1.name2 name3
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name3 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name1.name2 name4
PREHOOK: type: DESCTABLE
PREHOOK: Input: name1@name2
@@ -538,6 +577,7 @@ POSTHOOK: query: DESCRIBE name1.name2 name4
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: use name1
PREHOOK: type: SWITCHDATABASE
PREHOOK: Input: database:name1
@@ -629,6 +669,7 @@ POSTHOOK: query: DESCRIBE name2 name3
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name3 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name2 name4
PREHOOK: type: DESCTABLE
PREHOOK: Input: name1@name2
@@ -636,6 +677,7 @@ POSTHOOK: query: DESCRIBE name2 name4
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name1.name2
PREHOOK: type: DESCTABLE
PREHOOK: Input: name1@name2
@@ -651,6 +693,7 @@ POSTHOOK: query: DESCRIBE name1.name2 name3
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name3 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name1.name2 name4
PREHOOK: type: DESCTABLE
PREHOOK: Input: name1@name2
@@ -658,6 +701,7 @@ POSTHOOK: query: DESCRIBE name1.name2 name4
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name1@name2
name4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name2.table1
PREHOOK: type: DESCTABLE
PREHOOK: Input: name2@table1
@@ -673,6 +717,7 @@ POSTHOOK: query: DESCRIBE name2.table1 col1
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col1 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name2.table1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: name2@table1
@@ -680,6 +725,7 @@ POSTHOOK: query: DESCRIBE name2.table1 col2
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col2 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: use name2
PREHOOK: type: SWITCHDATABASE
PREHOOK: Input: database:name2
@@ -701,6 +747,7 @@ POSTHOOK: query: DESCRIBE table1 col1
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col1 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE table1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: name2@table1
@@ -708,6 +755,7 @@ POSTHOOK: query: DESCRIBE table1 col2
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col2 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name2.table1
PREHOOK: type: DESCTABLE
PREHOOK: Input: name2@table1
@@ -723,6 +771,7 @@ POSTHOOK: query: DESCRIBE name2.table1 col1
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col1 int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESCRIBE name2.table1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: name2@table1
@@ -730,6 +779,7 @@ POSTHOOK: query: DESCRIBE name2.table1 col2
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: name2@table1
col2 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DROP TABLE IF EXISTS table1
PREHOOK: type: DROPTABLE
PREHOOK: Input: name2@table1
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/describe_xpath.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/describe_xpath.q.out b/ql/src/test/results/clientpositive/describe_xpath.q.out
index 4d40fc2..e3d16a9 100644
--- a/ql/src/test/results/clientpositive/describe_xpath.q.out
+++ b/ql/src/test/results/clientpositive/describe_xpath.q.out
@@ -5,6 +5,7 @@ POSTHOOK: query: describe src_thrift lint
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_thrift
lint array<int> from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: describe src_thrift lint.$elem$
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_thrift
@@ -12,6 +13,7 @@ POSTHOOK: query: describe src_thrift lint.$elem$
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_thrift
$elem$ int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: describe src_thrift mStringString.$key$
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_thrift
@@ -19,6 +21,7 @@ POSTHOOK: query: describe src_thrift mStringString.$key$
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_thrift
$key$ string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: describe src_thrift mStringString.$value$
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_thrift
@@ -26,6 +29,7 @@ POSTHOOK: query: describe src_thrift mStringString.$value$
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_thrift
$value$ string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: describe src_thrift lintString.$elem$
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_thrift
@@ -35,6 +39,7 @@ POSTHOOK: Input: default@src_thrift
myint int from deserializer
mystring string from deserializer
underscore_int int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: describe src_thrift lintString.$elem$.myint
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@src_thrift
@@ -42,3 +47,4 @@ POSTHOOK: query: describe src_thrift lintString.$elem$.myint
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src_thrift
myint int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out b/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out
index e10edb4..f7d1400 100644
--- a/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out
+++ b/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out
@@ -245,6 +245,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
sourceIP string 0 69 12.763636363636364 13 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"sourceip\":\"true\"}}
PREHOOK: query: desc formatted UserVisits_web_text_none avgTimeOnSite
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@uservisits_web_text_none
@@ -254,6 +255,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
avgTimeOnSite int 1 9 0 11 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"sourceip\":\"true\"}}
PREHOOK: query: desc formatted UserVisits_web_text_none adRevenue
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@uservisits_web_text_none
@@ -263,6 +265,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
adRevenue float 13.099044799804688 492.98870849609375 0 58 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"sourceip\":\"true\"}}
PREHOOK: query: CREATE TABLE empty_tab(
a int,
b double,
@@ -292,6 +295,7 @@ POSTHOOK: Input: default@empty_tab
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
a int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: explain
analyze table empty_tab compute statistics for columns a,b,c,d,e
PREHOOK: type: QUERY
@@ -360,6 +364,7 @@ POSTHOOK: Input: default@empty_tab
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
a int 0 0 0 0 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\",\"c\":\"true\",\"d\":\"true\",\"e\":\"true\"}}
PREHOOK: query: desc formatted empty_tab b
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@empty_tab
@@ -369,6 +374,7 @@ POSTHOOK: Input: default@empty_tab
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
b double 0.0 0.0 0 0 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\",\"c\":\"true\",\"d\":\"true\",\"e\":\"true\"}}
PREHOOK: query: CREATE DATABASE test
PREHOOK: type: CREATEDATABASE
PREHOOK: Output: database:test
@@ -438,6 +444,7 @@ POSTHOOK: query: desc extended default.UserVisits_web_text_none sourceIP
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@uservisits_web_text_none
sourceIP string from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"sourceip\":\"true\"}}
PREHOOK: query: desc formatted UserVisits_web_text_none sourceIP
PREHOOK: type: DESCTABLE
PREHOOK: Input: test@uservisits_web_text_none
@@ -465,6 +472,7 @@ POSTHOOK: Input: default@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
sourceIP string 0 69 12.763636363636364 13 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"adrevenue\":\"true\",\"avgtimeonsite\":\"true\",\"sourceip\":\"true\"}}
PREHOOK: query: analyze table UserVisits_web_text_none compute statistics for columns sKeyword
PREHOOK: type: QUERY
PREHOOK: Input: test@uservisits_web_text_none
@@ -480,6 +488,7 @@ POSTHOOK: query: desc extended UserVisits_web_text_none sKeyword
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: test@uservisits_web_text_none
sKeyword string from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"skeyword\":\"true\"}}
PREHOOK: query: desc formatted UserVisits_web_text_none sKeyword
PREHOOK: type: DESCTABLE
PREHOOK: Input: test@uservisits_web_text_none
@@ -489,6 +498,7 @@ POSTHOOK: Input: test@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
sKeyword string 0 49 7.872727272727273 19 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"skeyword\":\"true\"}}
PREHOOK: query: desc formatted test.UserVisits_web_text_none sKeyword
PREHOOK: type: DESCTABLE
PREHOOK: Input: test@uservisits_web_text_none
@@ -498,3 +508,4 @@ POSTHOOK: Input: test@uservisits_web_text_none
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
sKeyword string 0 49 7.872727272727273 19 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"skeyword\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/escape_comments.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/escape_comments.q.out b/ql/src/test/results/clientpositive/escape_comments.q.out
index 111c103..5e958f6 100644
--- a/ql/src/test/results/clientpositive/escape_comments.q.out
+++ b/ql/src/test/results/clientpositive/escape_comments.q.out
@@ -102,8 +102,13 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
comment a
b
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/exim_hidden_files.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/exim_hidden_files.q.out b/ql/src/test/results/clientpositive/exim_hidden_files.q.out
index 9b04a6d..fea3e4b 100644
--- a/ql/src/test/results/clientpositive/exim_hidden_files.q.out
+++ b/ql/src/test/results/clientpositive/exim_hidden_files.q.out
@@ -75,6 +75,10 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ numFiles 1
+ numRows 0
+ rawDataSize 0
+ totalSize 11
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/alter_table_invalidate_column_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/alter_table_invalidate_column_stats.q.out b/ql/src/test/results/clientpositive/llap/alter_table_invalidate_column_stats.q.out
index 85d7dc4..c1c5f62 100644
--- a/ql/src/test/results/clientpositive/llap/alter_table_invalidate_column_stats.q.out
+++ b/ql/src/test/results/clientpositive/llap/alter_table_invalidate_column_stats.q.out
@@ -90,6 +90,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -99,6 +100,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -108,6 +110,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: alter table testtable1 replace columns (col1 int, col2 string, col4 string)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: statsdb1@testtable1
@@ -125,6 +128,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -134,6 +138,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col4
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -143,6 +148,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: alter table testtable1 change col1 col1 string
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: statsdb1@testtable1
@@ -160,6 +166,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -169,6 +176,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col4
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -178,6 +186,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: alter table statsdb1.testtable1 rename to statsdb2.testtable2
PREHOOK: type: ALTERTABLE_RENAME
PREHOOK: Input: statsdb1@testtable1
@@ -556,6 +565,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -565,6 +575,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col3
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -574,6 +585,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col3 string 0 1 4.0 4 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\",\"col3\":\"true\"}}
PREHOOK: query: alter table testtable1 replace columns (col1 int, col2 string, col4 string)
PREHOOK: type: ALTERTABLE_REPLACECOLS
PREHOOK: Input: statsdb1@testtable1
@@ -591,6 +603,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 int 27 484 0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -600,6 +613,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col4
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -609,6 +623,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col1\":\"true\",\"col2\":\"true\"}}
PREHOOK: query: alter table testtable1 change col1 col1 string
PREHOOK: type: ALTERTABLE_RENAMECOL
PREHOOK: Input: statsdb1@testtable1
@@ -626,6 +641,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col1 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col2
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -635,6 +651,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col2 string 0 12 6.7 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: describe formatted statsdb1.testtable1 col4
PREHOOK: type: DESCTABLE
PREHOOK: Input: statsdb1@testtable1
@@ -644,6 +661,7 @@ POSTHOOK: Input: statsdb1@testtable1
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
col4 string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"col2\":\"true\"}}
PREHOOK: query: alter table statsdb1.testtable1 rename to statsdb2.testtable2
PREHOOK: type: ALTERTABLE_RENAME
PREHOOK: Input: statsdb1@testtable1
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out b/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
index 712beba..6931b1b 100644
--- a/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
@@ -950,6 +950,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out b/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
index 9bff427..9513bb8 100644
--- a/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
@@ -126,6 +126,7 @@ POSTHOOK: Input: default@a
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe formatted b key
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@b
@@ -135,6 +136,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: from src
insert overwrite table a select *
insert into table b select *
@@ -232,6 +234,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe formatted b value
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@b
@@ -241,6 +244,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 0 214 6.812 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: insert into table b select NULL, NULL from src limit 10
PREHOOK: type: QUERY
PREHOOK: Input: default@src
@@ -260,6 +264,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 10 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe formatted b value
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@b
@@ -269,6 +274,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 10 214 6.812 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: insert into table b(value) select key+100000 from src limit 10
PREHOOK: type: QUERY
PREHOOK: Input: default@src
@@ -288,6 +294,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 20 205 2.812 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: describe formatted b value
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@b
@@ -297,6 +304,7 @@ POSTHOOK: Input: default@b
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 10 214 8.0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: drop table src_multi2
PREHOOK: type: DROPTABLE
POSTHOOK: query: drop table src_multi2
@@ -1069,6 +1077,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
[3/3] hive git commit: HIVE-16098 : Describe table doesn't show stats
for partitioned tables (Ashutosh Chauhan via Pengcheng Xiong)
Posted by ha...@apache.org.
HIVE-16098 : Describe table doesn't show stats for partitioned tables (Ashutosh Chauhan via Pengcheng Xiong)
Signed-off-by: Ashutosh Chauhan <ha...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/45b48d5f
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/45b48d5f
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/45b48d5f
Branch: refs/heads/master
Commit: 45b48d5fdc3527e56347b297d1a41902d1313220
Parents: daa8e24
Author: Ashutosh Chauhan <ha...@apache.org>
Authored: Thu Mar 2 18:56:14 2017 -0800
Committer: Ashutosh Chauhan <ha...@apache.org>
Committed: Tue Mar 7 15:57:00 2017 -0800
----------------------------------------------------------------------
.../org/apache/hadoop/hive/ql/exec/DDLTask.java | 89 ++++++++++++++------
.../hive/ql/metadata/PartitionIterable.java | 6 +-
.../formatting/MetaDataFormatUtils.java | 14 +--
.../formatting/TextMetaDataFormatter.java | 10 +++
.../apache/hadoop/hive/ql/stats/StatsUtils.java | 37 ++++----
.../queries/clientpositive/describe_table.q | 4 +
.../clientpositive/partition_coltype_literals.q | 6 ++
.../alter_view_as_select_with_partition.q.out | 5 ++
.../clientpositive/acid_table_stats.q.out | 10 +++
...lter_numbuckets_partitioned_table2_h23.q.out | 53 ++++++++++++
...alter_numbuckets_partitioned_table_h23.q.out | 48 +++++++++++
.../alter_partition_clusterby_sortby.q.out | 5 ++
.../alter_table_add_partition.q.out | 15 ++++
.../clientpositive/alter_table_serde2.q.out | 11 +++
.../alter_table_update_status.q.out | 48 +++++++++++
.../results/clientpositive/ambiguitycheck.q.out | 1 +
.../clientpositive/autoColumnStats_3.q.out | 5 ++
.../clientpositive/autoColumnStats_9.q.out | 2 +
.../results/clientpositive/avro_decimal.q.out | 1 +
.../clientpositive/avro_decimal_native.q.out | 1 +
.../avro_schema_evolution_native.q.out | 11 +++
.../beeline/escape_comments.q.out | 7 +-
.../clientpositive/colstats_all_nulls.q.out | 2 +
.../clientpositive/columnstats_partlvl.q.out | 2 +
.../clientpositive/columnstats_tbllvl.q.out | 7 ++
.../results/clientpositive/compustat_avro.q.out | 2 +
.../clientpositive/compute_stats_date.q.out | 2 +
.../confirm_initial_tbl_stats.q.out | 10 +++
.../clientpositive/create_like_view.q.out | 5 ++
.../clientpositive/create_or_replace_view.q.out | 20 +++++
.../create_table_like_stats.q.out | 10 +++
.../create_view_partitioned.q.out | 15 ++++
.../results/clientpositive/decimal_stats.q.out | 1 +
.../clientpositive/describe_syntax.q.out | 13 +++
.../results/clientpositive/describe_table.q.out | 54 +++++++++++-
.../results/clientpositive/describe_xpath.q.out | 6 ++
.../display_colstats_tbllvl.q.out | 11 +++
.../clientpositive/escape_comments.q.out | 5 ++
.../clientpositive/exim_hidden_files.q.out | 4 +
.../alter_table_invalidate_column_stats.q.out | 18 ++++
.../clientpositive/llap/autoColumnStats_1.q.out | 5 ++
.../clientpositive/llap/autoColumnStats_2.q.out | 13 +++
.../clientpositive/llap/orc_create.q.out | 21 +++++
.../clientpositive/llap/schema_evol_stats.q.out | 12 +++
.../clientpositive/llap/stats_noscan_1.q.out | 4 +
.../parquet_mixed_partition_formats.q.out | 5 ++
.../clientpositive/parquet_partitioned.q.out | 5 ++
.../results/clientpositive/parquet_serde.q.out | 5 ++
.../clientpositive/partial_column_stats.q.out | 1 +
.../partition_coltype_literals.q.out | 40 +++++++++
.../rename_table_update_column_stats.q.out | 12 +++
.../spark/avro_decimal_native.q.out | 1 +
.../results/clientpositive/spark/stats10.q.out | 5 ++
.../results/clientpositive/spark/stats12.q.out | 4 +
.../results/clientpositive/spark/stats13.q.out | 9 ++
.../results/clientpositive/spark/stats14.q.out | 10 +++
.../results/clientpositive/spark/stats15.q.out | 10 +++
.../results/clientpositive/spark/stats2.q.out | 9 ++
.../results/clientpositive/spark/stats3.q.out | 5 ++
.../results/clientpositive/spark/stats6.q.out | 4 +
.../results/clientpositive/spark/stats7.q.out | 4 +
.../results/clientpositive/spark/stats8.q.out | 9 ++
.../clientpositive/spark/stats_noscan_1.q.out | 4 +
.../clientpositive/spark/union_remove_15.q.out | 4 +
.../clientpositive/spark/union_remove_16.q.out | 4 +
.../clientpositive/spark/union_remove_17.q.out | 4 +
.../clientpositive/spark/union_remove_18.q.out | 4 +
.../test/results/clientpositive/stats10.q.out | 5 ++
.../test/results/clientpositive/stats12.q.out | 4 +
.../test/results/clientpositive/stats13.q.out | 9 ++
.../test/results/clientpositive/stats14.q.out | 10 +++
.../test/results/clientpositive/stats15.q.out | 10 +++
ql/src/test/results/clientpositive/stats2.q.out | 9 ++
ql/src/test/results/clientpositive/stats3.q.out | 5 ++
ql/src/test/results/clientpositive/stats4.q.out | 10 +++
ql/src/test/results/clientpositive/stats6.q.out | 4 +
ql/src/test/results/clientpositive/stats7.q.out | 4 +
ql/src/test/results/clientpositive/stats8.q.out | 9 ++
.../results/clientpositive/stats_noscan_1.q.out | 4 +
.../clientpositive/unicode_comments.q.out | 5 ++
.../clientpositive/union_remove_15.q.out | 4 +
.../clientpositive/union_remove_16.q.out | 4 +
.../clientpositive/union_remove_17.q.out | 4 +
.../clientpositive/union_remove_18.q.out | 4 +
84 files changed, 840 insertions(+), 53 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/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 17cd3ad..8801b4e 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
@@ -67,9 +67,12 @@ import org.apache.hadoop.hive.metastore.HiveMetaHook;
import org.apache.hadoop.hive.metastore.DefaultHiveMetaHook;
import org.apache.hadoop.hive.metastore.MetaStoreUtils;
import org.apache.hadoop.hive.metastore.PartitionDropOptions;
+import org.apache.hadoop.hive.metastore.StatObjectConverter;
import org.apache.hadoop.hive.metastore.TableType;
import org.apache.hadoop.hive.metastore.Warehouse;
+import org.apache.hadoop.hive.metastore.api.AggrStats;
import org.apache.hadoop.hive.metastore.api.AlreadyExistsException;
+import org.apache.hadoop.hive.metastore.api.ColumnStatisticsData;
import org.apache.hadoop.hive.metastore.api.ColumnStatisticsObj;
import org.apache.hadoop.hive.metastore.api.CompactionResponse;
import org.apache.hadoop.hive.metastore.api.Database;
@@ -155,6 +158,7 @@ import org.apache.hadoop.hive.ql.plan.AlterTableDesc.AlterTableTypes;
import org.apache.hadoop.hive.ql.plan.AlterTableExchangePartition;
import org.apache.hadoop.hive.ql.plan.AlterTableSimpleDesc;
import org.apache.hadoop.hive.ql.plan.CacheMetadataDesc;
+import org.apache.hadoop.hive.ql.plan.ColStatistics;
import org.apache.hadoop.hive.ql.plan.CreateDatabaseDesc;
import org.apache.hadoop.hive.ql.plan.CreateIndexDesc;
import org.apache.hadoop.hive.ql.plan.CreateTableDesc;
@@ -217,6 +221,7 @@ import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrivilegeObje
import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveRoleGrant;
import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveV1Authorizer;
import org.apache.hadoop.hive.ql.session.SessionState;
+import org.apache.hadoop.hive.ql.stats.StatsUtils;
import org.apache.hadoop.hive.serde.serdeConstants;
import org.apache.hadoop.hive.serde2.AbstractSerDe;
import org.apache.hadoop.hive.serde2.Deserializer;
@@ -2136,14 +2141,6 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
return 0;
}
- private static final String[] DELIMITER_PREFIXES = new String[] {
- "FIELDS TERMINATED BY",
- "COLLECTION ITEMS TERMINATED BY",
- "MAP KEYS TERMINATED BY",
- "LINES TERMINATED BY",
- "NULL DEFINED AS"
- };
-
private int showCreateDatabase(Hive db, ShowCreateDatabaseDesc showCreateDb) throws HiveException {
DataOutputStream outStream = getOutputStream(showCreateDb.getResFile());
try {
@@ -3279,8 +3276,9 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
* @return Returns 0 when execution succeeds and above 0 if it fails.
* @throws HiveException
* Throws this exception if an unexpected error occurs.
+ * @throws MetaException
*/
- private int describeTable(Hive db, DescTableDesc descTbl) throws HiveException {
+ private int describeTable(Hive db, DescTableDesc descTbl) throws HiveException, MetaException {
String colPath = descTbl.getColumnPath();
String tableName = descTbl.getTableName();
@@ -3301,7 +3299,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
DataOutputStream outStream = getOutputStream(descTbl.getResFile());
try {
- LOG.info("DDLTask: got data for " + tbl.getTableName());
+ LOG.debug("DDLTask: got data for " + tbl.getTableName());
List<FieldSchema> cols = null;
List<ColumnStatisticsObj> colStats = null;
@@ -3321,8 +3319,27 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
if (!descTbl.isFormatted()) {
cols.addAll(tbl.getPartCols());
}
+
+ if (tbl.isPartitioned() && part == null) {
+ // No partitioned specified for partitioned table, lets fetch all.
+ Map<String,String> tblProps = tbl.getParameters() == null ? new HashMap<String,String>() : tbl.getParameters();
+ PartitionIterable parts = new PartitionIterable(db, tbl, null, conf.getIntVar(HiveConf.ConfVars.METASTORE_BATCH_RETRIEVE_MAX));
+ for (String stat : StatsSetupConst.supportedStats) {
+ boolean state = true;
+ long statVal = 0l;
+ for (Partition partition : parts) {
+ Map<String,String> props = partition.getParameters();
+ state &= StatsSetupConst.areBasicStatsUptoDate(props);
+ if (props != null && props.get(stat) != null) {
+ statVal += Long.parseLong(props.get(stat));
+ }
+ }
+ StatsSetupConst.setBasicStatsState(tblProps, Boolean.toString(state));
+ tblProps.put(stat, String.valueOf(statVal));
+ }
+ tbl.setParameters(tblProps);
+ }
} else {
- cols = Hive.getFieldsFromDeserializer(colPath, deserializer);
if (descTbl.isFormatted()) {
// when column name is specified in describe table DDL, colPath will
// will be table_name.column_name
@@ -3331,12 +3348,46 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
List<String> colNames = new ArrayList<String>();
colNames.add(colName.toLowerCase());
if (null == part) {
- colStats = db.getTableColumnStatistics(dbTab[0].toLowerCase(), dbTab[1].toLowerCase(), colNames);
+ if (tbl.isPartitioned()) {
+ Map<String,String> tblProps = tbl.getParameters() == null ? new HashMap<String,String>() : tbl.getParameters();
+ if (tbl.isPartitionKey(colNames.get(0))) {
+ FieldSchema partCol = tbl.getPartColByName(colNames.get(0));
+ cols = Collections.singletonList(partCol);
+ PartitionIterable parts = new PartitionIterable(db, tbl, null, conf.getIntVar(HiveConf.ConfVars.METASTORE_BATCH_RETRIEVE_MAX));
+ ColumnInfo ci = new ColumnInfo(partCol.getName(),TypeInfoUtils.getTypeInfoFromTypeString(partCol.getType()),null,false);
+ ColStatistics cs = StatsUtils.getColStatsForPartCol(ci, parts, conf);
+ ColumnStatisticsData data = new ColumnStatisticsData();
+ ColStatistics.Range r = cs.getRange();
+ StatObjectConverter.fillColumnStatisticsData(partCol.getType(), data, r == null ? null : r.minValue, r == null ? null : r.maxValue,
+ r == null ? null : r.minValue, r == null ? null : r.maxValue, r == null ? null : r.minValue.toString(), r == null ? null : r.maxValue.toString(),
+ cs.getNumNulls(), cs.getCountDistint(), cs.getAvgColLen(), cs.getAvgColLen(), cs.getNumTrues(), cs.getNumFalses());
+ ColumnStatisticsObj cso = new ColumnStatisticsObj(partCol.getName(), partCol.getType(), data);
+ colStats = Collections.singletonList(cso);
+ StatsSetupConst.setColumnStatsState(tblProps, colNames);
+ } else {
+ cols = Hive.getFieldsFromDeserializer(colPath, deserializer);
+ List<String> parts = db.getPartitionNames(dbTab[0].toLowerCase(), dbTab[1].toLowerCase(), (short) -1);
+ AggrStats aggrStats = db.getAggrColStatsFor(dbTab[0].toLowerCase(), dbTab[1].toLowerCase(), colNames, parts);
+ colStats = aggrStats.getColStats();
+ if (parts.size() == aggrStats.getPartsFound()) {
+ StatsSetupConst.setColumnStatsState(tblProps, colNames);
+ } else {
+ StatsSetupConst.removeColumnStatsState(tblProps, colNames);
+ }
+ }
+ tbl.setParameters(tblProps);
+ } else {
+ cols = Hive.getFieldsFromDeserializer(colPath, deserializer);
+ colStats = db.getTableColumnStatistics(dbTab[0].toLowerCase(), dbTab[1].toLowerCase(), colNames);
+ }
} else {
List<String> partitions = new ArrayList<String>();
partitions.add(part.getName());
+ cols = Hive.getFieldsFromDeserializer(colPath, deserializer);
colStats = db.getPartitionColumnStatistics(dbTab[0].toLowerCase(), dbTab[1].toLowerCase(), partitions, colNames).get(part.getName());
}
+ } else {
+ cols = Hive.getFieldsFromDeserializer(colPath, deserializer);
}
}
PrimaryKeyInfo pkInfo = null;
@@ -3353,7 +3404,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
cols, descTbl.isFormatted(), descTbl.isExt(),
descTbl.isPretty(), isOutputPadded, colStats, pkInfo, fkInfo);
- LOG.info("DDLTask: written data for " + tbl.getTableName());
+ LOG.debug("DDLTask: written data for " + tbl.getTableName());
} catch (SQLException e) {
throw new HiveException(e, ErrorMsg.GENERIC_ERROR, tableName);
@@ -4700,18 +4751,6 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
return statsPresent;
}
- private String escapeHiveCommand(String str) {
- StringBuilder sb = new StringBuilder();
- for (int i = 0; i < str.length(); i ++) {
- char c = str.charAt(i);
- if (c == '\'') {
- sb.append('\\');
- }
- sb.append(c);
- }
- return sb.toString();
- }
-
@Override
public StageType getType() {
return StageType.DDL;
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/java/org/apache/hadoop/hive/ql/metadata/PartitionIterable.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/metadata/PartitionIterable.java b/ql/src/java/org/apache/hadoop/hive/ql/metadata/PartitionIterable.java
index 25a7b57..b00044a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/metadata/PartitionIterable.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/metadata/PartitionIterable.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.hive.ql.metadata;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -67,6 +68,7 @@ public class PartitionIterable implements Iterable<Partition> {
}
}
+ @Override
public boolean hasNext() {
initialize();
if (currType == Type.LIST_PROVIDED){
@@ -120,7 +122,7 @@ public class PartitionIterable implements Iterable<Partition> {
final Type currType;
// used for LIST_PROVIDED cases
- private List<Partition> ptnsProvided = null;
+ private Collection<Partition> ptnsProvided = null;
// used for LAZY_FETCH_PARTITIONS cases
private Hive db = null; // Assumes one instance of this + single-threaded compilation for each query.
@@ -134,7 +136,7 @@ public class PartitionIterable implements Iterable<Partition> {
* list of partitions, allows for easy drop-in replacement for other methods
* that already have a List<Partition>
*/
- public PartitionIterable(List<Partition> ptnsProvided){
+ public PartitionIterable(Collection<Partition> ptnsProvided){
this.currType = Type.LIST_PROVIDED;
this.ptnsProvided = ptnsProvided;
}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
index 03f74dd..f73c610 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
@@ -491,10 +491,10 @@ public final class MetaDataFormatUtils {
static String getComment(FieldSchema col) {
return col.getComment() != null ? col.getComment() : "";
}
-
+
/**
* Compares to lists of object T as vectors
- *
+ *
* @param <T> the base object type. Must be {@link Comparable}
*/
private static class VectorComparator<T extends Comparable<T>> implements Comparator<List<T>>{
@@ -518,7 +518,7 @@ public final class MetaDataFormatUtils {
return Integer.compare(listA.size(), listB.size());
}
}
-
+
/**
* Returns a sorted version of the given list
*/
@@ -544,7 +544,7 @@ public final class MetaDataFormatUtils {
Collections.sort(ret,comp);
return ret;
}
-
+
private static String formatDate(long timeInSeconds) {
if (timeInSeconds != 0) {
Date date = new Date(timeInSeconds * 1000);
@@ -616,7 +616,7 @@ public final class MetaDataFormatUtils {
* @param tableInfo The target builder
* @param isOutputPadded Should the value printed as a padded string?
*/
- private static void formatOutput(String name, String value, StringBuilder tableInfo,
+ protected static void formatOutput(String name, String value, StringBuilder tableInfo,
boolean isOutputPadded) {
String unescapedValue =
(isOutputPadded && value != null) ? value.replaceAll("\\\\n|\\\\r|\\\\r\\\\n","\n"):value;
@@ -646,8 +646,8 @@ public final class MetaDataFormatUtils {
bcsd.getNumTrues(), bcsd.getNumFalses());
} else if (csd.isSetDecimalStats()) {
DecimalColumnStatsData dcsd = csd.getDecimalStats();
- appendColumnStats(tableInfo, convertToString(dcsd.getLowValue()),
- convertToString(dcsd.getHighValue()), dcsd.getNumNulls(), dcsd.getNumDVs(),
+ appendColumnStats(tableInfo, convertToString(dcsd.getLowValue()),
+ convertToString(dcsd.getHighValue()), dcsd.getNumNulls(), dcsd.getNumDVs(),
"", "", "", "");
} else if (csd.isSetDoubleStats()) {
DoubleColumnStatsData dcsd = csd.getDoubleStats();
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java b/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java
index b990bda..39a327d 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java
@@ -30,10 +30,12 @@ import java.util.Set;
import org.apache.hive.common.util.HiveStringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.apache.commons.lang.StringEscapeUtils;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hive.common.FileUtils;
+import org.apache.hadoop.hive.common.StatsSetupConst;
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.metastore.MetaStoreUtils;
import org.apache.hadoop.hive.metastore.api.ColumnStatisticsObj;
@@ -132,6 +134,14 @@ class TextMetaDataFormatter implements MetaDataFormatter {
MetaDataFormatUtils.getAllColumnsInformation(cols, partCols, isFormatted, isOutputPadded, showPartColsSeparately);
} else {
output = MetaDataFormatUtils.getAllColumnsInformation(cols, isFormatted, isOutputPadded, colStats);
+ String statsState;
+ if (tbl.getParameters() != null && (statsState = tbl.getParameters().get(StatsSetupConst.COLUMN_STATS_ACCURATE)) != null) {
+ StringBuilder str = new StringBuilder();
+ MetaDataFormatUtils.formatOutput(StatsSetupConst.COLUMN_STATS_ACCURATE,
+ isFormatted ? StringEscapeUtils.escapeJava(statsState) : HiveStringUtils.escapeJava(statsState),
+ str, isOutputPadded);
+ output = output.concat(str.toString());
+ }
}
outStream.write(output.getBytes("UTF-8"));
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java
index e48b609..413aacf 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java
@@ -22,6 +22,7 @@ import java.io.IOException;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
@@ -53,6 +54,7 @@ import org.apache.hadoop.hive.ql.exec.Utilities;
import org.apache.hadoop.hive.ql.metadata.Hive;
import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.metadata.Partition;
+import org.apache.hadoop.hive.ql.metadata.PartitionIterable;
import org.apache.hadoop.hive.ql.metadata.Table;
import org.apache.hadoop.hive.ql.parse.PrunedPartitionList;
import org.apache.hadoop.hive.ql.parse.SemanticException;
@@ -424,34 +426,37 @@ public class StatsUtils {
// conditions for being partition column
if (col.equals(ci.getInternalName()) && ci.getIsVirtualCol() &&
!ci.isHiddenVirtualCol()) {
- // currently metastore does not store column stats for
- // partition column, so we calculate the NDV from pruned
- // partition list
- ColStatistics partCS = new ColStatistics(ci.getInternalName(), ci.getType()
- .getTypeName());
- long numPartitions = getNDVPartitionColumn(partList.getPartitions(),
- ci.getInternalName());
- partCS.setCountDistint(numPartitions);
- partCS.setAvgColLen(StatsUtils.getAvgColLenOf(conf,
- ci.getObjectInspector(), partCS.getColumnType()));
- partCS.setRange(getRangePartitionColumn(partList.getPartitions(), ci.getInternalName(),
- ci.getType().getTypeName(), conf.getVar(ConfVars.DEFAULTPARTITIONNAME)));
- colStats.add(partCS);
+ colStats.add(getColStatsForPartCol(ci, new PartitionIterable(partList.getPartitions()), conf));
}
}
}
}
}
- public static int getNDVPartitionColumn(Set<Partition> partitions, String partColName) {
- Set<String> distinctVals = new HashSet<String>(partitions.size());
+ public static ColStatistics getColStatsForPartCol(ColumnInfo ci,PartitionIterable partList, HiveConf conf) {
+ // currently metastore does not store column stats for
+ // partition column, so we calculate the NDV from partition list
+ ColStatistics partCS = new ColStatistics(ci.getInternalName(), ci.getType()
+ .getTypeName());
+ long numPartitions = getNDVPartitionColumn(partList,
+ ci.getInternalName());
+ partCS.setCountDistint(numPartitions);
+ partCS.setAvgColLen(StatsUtils.getAvgColLenOf(conf,
+ ci.getObjectInspector(), partCS.getColumnType()));
+ partCS.setRange(getRangePartitionColumn(partList, ci.getInternalName(),
+ ci.getType().getTypeName(), conf.getVar(ConfVars.DEFAULTPARTITIONNAME)));
+ return partCS;
+ }
+
+ public static int getNDVPartitionColumn(PartitionIterable partitions, String partColName) {
+ Set<String> distinctVals = new HashSet<String>();
for (Partition partition : partitions) {
distinctVals.add(partition.getSpec().get(partColName));
}
return distinctVals.size();
}
- private static Range getRangePartitionColumn(Set<Partition> partitions, String partColName,
+ private static Range getRangePartitionColumn(PartitionIterable partitions, String partColName,
String colType, String defaultPartName) {
Range range = null;
String partVal;
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/queries/clientpositive/describe_table.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/describe_table.q b/ql/src/test/queries/clientpositive/describe_table.q
index c388207..c025692 100644
--- a/ql/src/test/queries/clientpositive/describe_table.q
+++ b/ql/src/test/queries/clientpositive/describe_table.q
@@ -22,6 +22,10 @@ describe formatted `srcpart`;
describe formatted `srcpart` `key`;
describe formatted `srcpart` PARTITION(ds='2008-04-08', hr='12');
+
+describe formatted `srcpart` `ds`;
+describe formatted `srcpart` `hr`;
+
create table srcpart_serdeprops like srcpart;
alter table srcpart_serdeprops set serdeproperties('xyz'='0');
alter table srcpart_serdeprops set serdeproperties('pqrs'='1');
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/queries/clientpositive/partition_coltype_literals.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/partition_coltype_literals.q b/ql/src/test/queries/clientpositive/partition_coltype_literals.q
index 0c2365a..eb56b1a 100644
--- a/ql/src/test/queries/clientpositive/partition_coltype_literals.q
+++ b/ql/src/test/queries/clientpositive/partition_coltype_literals.q
@@ -36,6 +36,11 @@ analyze table partcoltypenum partition (tint=110Y, sint=22000S, bint=33000000000
describe formatted partcoltypenum partition (tint=110Y, sint=22000S, bint=330000000000L) key;
describe formatted partcoltypenum partition (tint=110Y, sint=22000S, bint=330000000000L) value;
+-- desc on partition column
+describe formatted partcoltypenum tint;
+describe formatted partcoltypenum sint;
+describe formatted partcoltypenum bint;
+
-- change table column type for partition
alter table partcoltypenum change key key decimal(10,0);
alter table partcoltypenum partition (tint=110Y, sint=22000S, bint=330000000000L) change key key decimal(10,0);
@@ -44,6 +49,7 @@ describe formatted partcoltypenum partition (tint=110Y, sint=22000S, bint=330000
-- change partititon column type
alter table partcoltypenum partition column (tint decimal(3,0));
describe formatted partcoltypenum partition (tint=110BD, sint=22000S, bint=330000000000L);
+describe formatted partcoltypenum tint;
-- show partition
show partitions partcoltypenum partition (tint=110BD, sint=22000S, bint=330000000000L);
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out b/ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out
index 9e07416..12f4f51 100644
--- a/ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out
+++ b/ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out
@@ -52,6 +52,11 @@ Database: default
Retention: 0
Table Type: VIRTUAL_VIEW
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/acid_table_stats.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/acid_table_stats.q.out b/ql/src/test/results/clientpositive/acid_table_stats.q.out
index 5d8a000..ad0cc3a 100644
--- a/ql/src/test/results/clientpositive/acid_table_stats.q.out
+++ b/ql/src/test/results/clientpositive/acid_table_stats.q.out
@@ -33,6 +33,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
transactional true
#### A masked pattern was here ####
@@ -601,6 +606,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table2_h23.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table2_h23.q.out b/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table2_h23.q.out
index 53ed194..c197152 100644
--- a/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table2_h23.q.out
+++ b/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table2_h23.q.out
@@ -29,6 +29,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -121,6 +126,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -213,6 +224,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 8
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -305,6 +322,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 8
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -397,6 +420,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 8
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -489,6 +518,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -581,6 +616,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -673,6 +714,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -765,6 +812,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 4
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table_h23.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table_h23.q.out b/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table_h23.q.out
index 578bad7..3890aef 100644
--- a/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table_h23.q.out
+++ b/ql/src/test/results/clientpositive/alter_numbuckets_partitioned_table_h23.q.out
@@ -37,6 +37,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -178,6 +184,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -220,6 +232,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -302,6 +320,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -385,6 +409,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -428,6 +458,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -471,6 +507,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
@@ -514,6 +556,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 12
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_partition_clusterby_sortby.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_partition_clusterby_sortby.q.out b/ql/src/test/results/clientpositive/alter_partition_clusterby_sortby.q.out
index 29fbe6f..ab35e96 100644
--- a/ql/src/test/results/clientpositive/alter_partition_clusterby_sortby.q.out
+++ b/ql/src/test/results/clientpositive/alter_partition_clusterby_sortby.q.out
@@ -183,7 +183,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
SORTBUCKETCOLSPREFIX TRUE
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_table_add_partition.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_table_add_partition.q.out b/ql/src/test/results/clientpositive/alter_table_add_partition.q.out
index d459f3b..7b1075e 100644
--- a/ql/src/test/results/clientpositive/alter_table_add_partition.q.out
+++ b/ql/src/test/results/clientpositive/alter_table_add_partition.q.out
@@ -28,6 +28,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -69,6 +74,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -148,6 +158,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 1
+ numRows 1
+ rawDataSize 1
+ totalSize 2
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_table_serde2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_table_serde2.q.out b/ql/src/test/results/clientpositive/alter_table_serde2.q.out
index a1e1fb2..9208ec3 100644
--- a/ql/src/test/results/clientpositive/alter_table_serde2.q.out
+++ b/ql/src/test/results/clientpositive/alter_table_serde2.q.out
@@ -29,6 +29,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information
@@ -121,6 +126,12 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+#### A masked pattern was here ####
+ numFiles 1
+ numRows 500
+ rawDataSize 5312
+ totalSize 5812
#### A masked pattern was here ####
# Storage Information
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/alter_table_update_status.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/alter_table_update_status.q.out b/ql/src/test/results/clientpositive/alter_table_update_status.q.out
index a3c4f1a..e26e8cb 100644
--- a/ql/src/test/results/clientpositive/alter_table_update_status.q.out
+++ b/ql/src/test/results/clientpositive/alter_table_update_status.q.out
@@ -49,6 +49,7 @@ POSTHOOK: Input: default@src_stat
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 14 1.72 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: ALTER TABLE src_stat UPDATE STATISTICS for column key SET ('numDVs'='1111','avgColLen'='1.111')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE src_stat UPDATE STATISTICS for column key SET ('numDVs'='1111','avgColLen'='1.111')
@@ -62,6 +63,7 @@ POSTHOOK: Input: default@src_stat
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 1111 1.111 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: ALTER TABLE src_stat UPDATE STATISTICS for column value SET ('numDVs'='121','numNulls'='122','avgColLen'='1.23','maxColLen'='124')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE src_stat UPDATE STATISTICS for column value SET ('numDVs'='121','numNulls'='122','avgColLen'='1.23','maxColLen'='124')
@@ -75,6 +77,7 @@ POSTHOOK: Input: default@src_stat
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 122 121 1.23 124 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: ANALYZE TABLE src_stat_int COMPUTE STATISTICS for columns key
PREHOOK: type: QUERY
PREHOOK: Input: default@src_stat_int
@@ -92,6 +95,7 @@ POSTHOOK: Input: default@src_stat_int
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key double 66.0 406.0 10 14 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: ALTER TABLE src_stat_int UPDATE STATISTICS for column key SET ('numDVs'='2222','lowValue'='333.22','highValue'='22.22')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE src_stat_int UPDATE STATISTICS for column key SET ('numDVs'='2222','lowValue'='333.22','highValue'='22.22')
@@ -105,6 +109,7 @@ POSTHOOK: Input: default@src_stat_int
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key double 333.22 22.22 10 2222 from deserializer
+COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"key\":\"true\"}}
PREHOOK: query: create database if not exists dummydb
PREHOOK: type: CREATEDATABASE
PREHOOK: Output: database:dummydb
@@ -130,6 +135,7 @@ POSTHOOK: Input: default@src_stat
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
key string 0 3333 2.222 3 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: ALTER TABLE default.src_stat UPDATE STATISTICS for column value SET ('numDVs'='232','numNulls'='233','avgColLen'='2.34','maxColLen'='235')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.src_stat UPDATE STATISTICS for column value SET ('numDVs'='232','numNulls'='233','avgColLen'='2.34','maxColLen'='235')
@@ -143,6 +149,7 @@ POSTHOOK: Input: default@src_stat
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
value string 233 232 2.34 235 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
PREHOOK: query: use default
PREHOOK: type: SWITCHDATABASE
PREHOOK: Input: database:default
@@ -242,6 +249,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
s smallint from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats i
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -251,6 +259,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
i int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats b
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -260,6 +269,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
b bigint from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats f
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -269,6 +279,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
f float from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats d
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -278,6 +289,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
d double from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats dem
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -287,6 +299,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dem decimal(10,0) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats ts
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -296,6 +309,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
ts timestamp from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats dt
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -305,6 +319,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dt date from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats str
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -314,6 +329,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
str string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats v
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -323,6 +339,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
v varchar(12) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats c
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -332,6 +349,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
c char(5) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats bl
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -341,6 +359,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bl boolean from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats bin
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -350,6 +369,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bin binary from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: DESC FORMATTED datatype_stats t
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -359,6 +379,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
t tinyint from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column t SET ('numDVs'='232','numNulls'='233','highValue'='234','lowValue'='35')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column t SET ('numDVs'='232','numNulls'='233','highValue'='234','lowValue'='35')
@@ -372,6 +393,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
t tinyint 35 234 233 232 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats s
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -381,6 +403,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
s smallint from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column s SET ('numDVs'='56','numNulls'='56','highValue'='489','lowValue'='25')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column s SET ('numDVs'='56','numNulls'='56','highValue'='489','lowValue'='25')
@@ -394,6 +417,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
s smallint 25 489 56 56 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats i
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -403,6 +427,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
i int from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column i SET ('numDVs'='59','numNulls'='1','highValue'='889','lowValue'='5')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column i SET ('numDVs'='59','numNulls'='1','highValue'='889','lowValue'='5')
@@ -416,6 +441,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
i int 5 889 1 59 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats b
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -425,6 +451,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
b bigint from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column b SET ('numDVs'='9','numNulls'='14','highValue'='89','lowValue'='8')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column b SET ('numDVs'='9','numNulls'='14','highValue'='89','lowValue'='8')
@@ -438,6 +465,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
b bigint 8 89 14 9 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats f
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -447,6 +475,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
f float from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column f SET ('numDVs'='563','numNulls'='45','highValue'='2345.656','lowValue'='8.00')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column f SET ('numDVs'='563','numNulls'='45','highValue'='2345.656','lowValue'='8.00')
@@ -460,6 +489,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
f float 8.0 2345.656 45 563 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats d
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -469,6 +499,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
d double from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column d SET ('numDVs'='5677','numNulls'='12','highValue'='560.3367','lowValue'='0.00455')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column d SET ('numDVs'='5677','numNulls'='12','highValue'='560.3367','lowValue'='0.00455')
@@ -482,6 +513,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
d double 0.00455 560.3367 12 5677 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats dem
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -491,6 +523,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dem decimal(10,0) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column dem SET ('numDVs'='57','numNulls'='912','highValue'='560','lowValue'='0')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column dem SET ('numDVs'='57','numNulls'='912','highValue'='560','lowValue'='0')
@@ -504,6 +537,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dem decimal(10,0) 0 560 912 57 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats ts
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -513,6 +547,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
ts timestamp from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column ts SET ('numDVs'='7','numNulls'='12','highValue'='1357030923','lowValue'='1357030924')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column ts SET ('numDVs'='7','numNulls'='12','highValue'='1357030923','lowValue'='1357030924')
@@ -526,6 +561,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
ts timestamp 1357030924 1357030923 12 7 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats dt
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -535,6 +571,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dt date from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column dt SET ('numDVs'='57','numNulls'='912','highValue'='2012-01-01','lowValue'='2001-02-04')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column dt SET ('numDVs'='57','numNulls'='912','highValue'='2012-01-01','lowValue'='2001-02-04')
@@ -548,6 +585,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
dt date 2001-02-04 2012-01-01 912 57 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats str
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -557,6 +595,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
str string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column str SET ('numDVs'='232','numNulls'='233','avgColLen'='2.34','maxColLen'='235')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column str SET ('numDVs'='232','numNulls'='233','avgColLen'='2.34','maxColLen'='235')
@@ -570,6 +609,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
str string 233 232 2.34 235 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats v
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -579,6 +619,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
v varchar(12) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column v SET ('numDVs'='22','numNulls'='33','avgColLen'='4.40','maxColLen'='25')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column v SET ('numDVs'='22','numNulls'='33','avgColLen'='4.40','maxColLen'='25')
@@ -592,6 +633,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
v varchar(12) 33 22 4.4 25 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats c
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -601,6 +643,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
c char(5) from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column c SET ('numDVs'='2','numNulls'='03','avgColLen'='9.00','maxColLen'='58')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column c SET ('numDVs'='2','numNulls'='03','avgColLen'='9.00','maxColLen'='58')
@@ -614,6 +657,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
c char(5) 3 2 9.0 58 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"c\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats bl
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -623,6 +667,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bl boolean from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"c\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column bl SET ('numNulls'='1','numTrues'='9','numFalses'='8')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column bl SET ('numNulls'='1','numTrues'='9','numFalses'='8')
@@ -636,6 +681,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bl boolean 1 9 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"bl\":\"true\",\"c\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: DESC FORMATTED datatype_stats bin
PREHOOK: type: DESCTABLE
PREHOOK: Input: default@datatype_stats
@@ -645,6 +691,7 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bin binary from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"bl\":\"true\",\"c\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
PREHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column bin SET ('numNulls'='8','avgColLen'='2.0','maxColLen'='8')
PREHOOK: type: ALTERTABLE_UPDATETABLESTATS
POSTHOOK: query: ALTER TABLE default.datatype_stats UPDATE STATISTICS for column bin SET ('numNulls'='8','avgColLen'='2.0','maxColLen'='8')
@@ -658,3 +705,4 @@ POSTHOOK: Input: default@datatype_stats
# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment
bin binary 8 2.0 8 from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"b\":\"true\",\"bin\":\"true\",\"bl\":\"true\",\"c\":\"true\",\"d\":\"true\",\"dem\":\"true\",\"dt\":\"true\",\"f\":\"true\",\"i\":\"true\",\"s\":\"true\",\"str\":\"true\",\"t\":\"true\",\"ts\":\"true\",\"v\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/ambiguitycheck.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/ambiguitycheck.q.out b/ql/src/test/results/clientpositive/ambiguitycheck.q.out
index 3574573..d7fee3d 100644
--- a/ql/src/test/results/clientpositive/ambiguitycheck.q.out
+++ b/ql/src/test/results/clientpositive/ambiguitycheck.q.out
@@ -837,3 +837,4 @@ POSTHOOK: query: desc default.src key
POSTHOOK: type: DESCTABLE
POSTHOOK: Input: default@src
key string from deserializer
+COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}}
http://git-wip-us.apache.org/repos/asf/hive/blob/45b48d5f/ql/src/test/results/clientpositive/autoColumnStats_3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/autoColumnStats_3.q.out b/ql/src/test/results/clientpositive/autoColumnStats_3.q.out
index dca158b..37b4d84 100644
--- a/ql/src/test/results/clientpositive/autoColumnStats_3.q.out
+++ b/ql/src/test/results/clientpositive/autoColumnStats_3.q.out
@@ -136,6 +136,11 @@ Retention: 0
#### A masked pattern was here ####
Table Type: MANAGED_TABLE
Table Parameters:
+ COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"}
+ numFiles 0
+ numRows 0
+ rawDataSize 0
+ totalSize 0
#### A masked pattern was here ####
# Storage Information