HIVE-16566: Set column stats default as true when creating new tables/partitions (Pengcheng Xiong, reviewed by Ashutosh Chauhan)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/52a71e96 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/52a71e96 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/52a71e96 Branch: refs/heads/hive-14535 Commit: 52a71e9608928b41ea6a4ae7bf2365641009ce56 Parents: 019ad8c Author: Pengcheng Xiong <[email protected]> Authored: Fri Jun 2 13:26:02 2017 -0700 Committer: Pengcheng Xiong <[email protected]> Committed: Fri Jun 2 13:26:02 2017 -0700 ---------------------------------------------------------------------- .../hadoop/hive/common/StatsSetupConst.java | 7 +- .../results/positive/external_table_ppd.q.out | 2 +- .../positive/hbase_binary_storage_queries.q.out | 4 +- .../src/test/results/positive/hbasestats.q.out | 2 +- .../write_final_output_blobstore.q.out | 16 +- .../hadoop/hive/metastore/MetaStoreUtils.java | 8 + .../org/apache/hadoop/hive/ql/exec/DDLTask.java | 4 +- .../apache/hadoop/hive/ql/metadata/Hive.java | 2 +- .../hive/ql/parse/DDLSemanticAnalyzer.java | 4 +- .../hadoop/hive/ql/plan/CreateTableDesc.java | 7 +- .../queries/clientpositive/alterColumnStats.q | 21 + .../clientpositive/alterColumnStatsPart.q | 47 ++ .../clientnegative/alter_file_format.q.out | 2 +- .../clientnegative/unset_table_property.q.out | 2 +- .../clientpositive/alterColumnStats.q.out | 158 ++++++ .../clientpositive/alterColumnStatsPart.q.out | 507 +++++++++++++++++++ .../clientpositive/alter_file_format.q.out | 26 +- .../alter_partition_clusterby_sortby.q.out | 6 +- .../clientpositive/alter_skewed_table.q.out | 12 +- .../alter_table_add_partition.q.out | 2 +- .../clientpositive/alter_table_not_sorted.q.out | 4 +- .../clientpositive/autoColumnStats_3.q.out | 2 +- .../clientpositive/autoColumnStats_4.q.out | 2 +- .../clientpositive/binary_output_format.q.out | 16 +- .../test/results/clientpositive/bucket1.q.out | 4 +- .../test/results/clientpositive/bucket2.q.out | 4 +- .../clientpositive/bucket_map_join_spark1.q.out | 4 +- .../clientpositive/bucket_map_join_spark2.q.out | 4 +- .../clientpositive/bucket_map_join_spark3.q.out | 4 +- .../results/clientpositive/bucketmapjoin5.q.out | 16 +- .../clientpositive/bucketmapjoin_negative.q.out | 16 +- .../bucketmapjoin_negative2.q.out | 16 +- ...names_with_leading_and_trailing_spaces.q.out | 4 +- .../results/clientpositive/compustat_avro.q.out | 4 +- .../create_alter_list_bucketing_table1.q.out | 14 +- .../results/clientpositive/create_like.q.out | 18 +- .../results/clientpositive/create_like2.q.out | 2 +- .../clientpositive/create_like_tbl_props.q.out | 10 +- .../clientpositive/create_like_view.q.out | 6 +- .../clientpositive/create_skewed_table1.q.out | 6 +- .../create_table_like_stats.q.out | 2 +- .../create_with_constraints.q.out | 72 +-- .../clientpositive/database_location.q.out | 4 +- .../clientpositive/default_file_format.q.out | 16 +- .../describe_comment_indent.q.out | 2 +- .../describe_comment_nonascii.q.out | 2 +- .../describe_formatted_view_partitioned.q.out | 2 +- .../clientpositive/describe_syntax.q.out | 4 +- .../results/clientpositive/describe_table.q.out | 24 +- .../display_colstats_tbllvl.q.out | 2 +- .../results/clientpositive/druid_basic1.q.out | 4 +- .../results/clientpositive/druid_basic2.q.out | 18 +- .../clientpositive/druid_intervals.q.out | 2 +- .../clientpositive/druid_timeseries.q.out | 2 +- .../results/clientpositive/druid_topn.q.out | 2 +- .../clientpositive/groupby_map_ppr.q.out | 4 +- .../groupby_map_ppr_multi_distinct.q.out | 4 +- .../results/clientpositive/groupby_ppr.q.out | 4 +- .../groupby_ppr_multi_distinct.q.out | 4 +- .../clientpositive/groupby_sort_1_23.q.out | 56 +- .../results/clientpositive/groupby_sort_6.q.out | 4 +- .../clientpositive/groupby_sort_skew_1_23.q.out | 56 +- .../results/clientpositive/input_part1.q.out | 16 +- .../results/clientpositive/input_part2.q.out | 32 +- .../insert_values_orig_table_use_metadata.q.out | 4 +- ql/src/test/results/clientpositive/join17.q.out | 4 +- ql/src/test/results/clientpositive/join26.q.out | 4 +- ql/src/test/results/clientpositive/join32.q.out | 4 +- ql/src/test/results/clientpositive/join33.q.out | 4 +- ql/src/test/results/clientpositive/join34.q.out | 6 +- ql/src/test/results/clientpositive/join35.q.out | 6 +- ql/src/test/results/clientpositive/join9.q.out | 4 +- .../results/clientpositive/join_map_ppr.q.out | 16 +- .../clientpositive/list_bucket_dml_14.q.out | 4 +- .../clientpositive/llap/autoColumnStats_2.q.out | 2 +- .../results/clientpositive/llap/bucket2.q.out | 4 +- .../results/clientpositive/llap/bucket4.q.out | 4 +- .../results/clientpositive/llap/bucket5.q.out | 20 +- .../clientpositive/llap/bucket_many.q.out | 4 +- .../clientpositive/llap/bucketmapjoin1.q.out | 4 +- .../clientpositive/llap/bucketmapjoin2.q.out | 4 +- .../clientpositive/llap/bucketmapjoin3.q.out | 4 +- .../clientpositive/llap/bucketmapjoin4.q.out | 4 +- ...names_with_leading_and_trailing_spaces.q.out | 4 +- .../llap/disable_merge_for_bucketing.q.out | 4 +- .../llap/dynamic_semijoin_reduction.q.out | 2 +- .../llap/dynamic_semijoin_user_level.q.out | 2 +- .../clientpositive/llap/join32_lessSize.q.out | 8 +- .../clientpositive/llap/metadataonly1.q.out | 40 +- .../clientpositive/llap/orc_create.q.out | 4 +- .../llap/reduce_deduplicate.q.out | 4 +- .../results/clientpositive/llap/sample1.q.out | 4 +- .../results/clientpositive/llap/stats11.q.out | 4 +- .../results/clientpositive/llap/sysdb.q.out | 10 +- .../parquet_array_null_element.q.out | 2 +- .../results/clientpositive/parquet_create.q.out | 2 +- .../parquet_int96_timestamp.q.out | 4 +- .../clientpositive/part_inherit_tbl_props.q.out | 2 +- .../part_inherit_tbl_props_empty.q.out | 2 +- .../part_inherit_tbl_props_with_star.q.out | 2 +- .../clientpositive/partial_column_stats.q.out | 2 +- .../partition_coltype_literals.q.out | 8 +- ql/src/test/results/clientpositive/pcr.q.out | 32 +- .../results/clientpositive/quotedid_stats.q.out | 2 +- .../clientpositive/rand_partitionpruner2.q.out | 16 +- .../clientpositive/rcfile_default_format.q.out | 6 +- .../test/results/clientpositive/sample1.q.out | 16 +- .../test/results/clientpositive/sample2.q.out | 16 +- .../test/results/clientpositive/sample4.q.out | 16 +- .../test/results/clientpositive/sample5.q.out | 16 +- .../test/results/clientpositive/sample6.q.out | 16 +- .../test/results/clientpositive/sample7.q.out | 16 +- .../clientpositive/show_tblproperties.q.out | 10 +- .../results/clientpositive/spark/bucket2.q.out | 4 +- .../results/clientpositive/spark/bucket4.q.out | 4 +- .../results/clientpositive/spark/bucket5.q.out | 8 +- .../spark/bucket_map_join_spark1.q.out | 4 +- .../spark/bucket_map_join_spark2.q.out | 4 +- .../spark/bucket_map_join_spark3.q.out | 4 +- .../clientpositive/spark/bucketmapjoin1.q.out | 4 +- .../clientpositive/spark/bucketmapjoin2.q.out | 4 +- .../clientpositive/spark/bucketmapjoin3.q.out | 4 +- .../clientpositive/spark/bucketmapjoin4.q.out | 4 +- .../clientpositive/spark/bucketmapjoin5.q.out | 4 +- .../spark/bucketmapjoin_negative.q.out | 4 +- .../spark/bucketmapjoin_negative2.q.out | 4 +- .../spark/disable_merge_for_bucketing.q.out | 4 +- .../clientpositive/spark/groupby_map_ppr.q.out | 4 +- .../spark/groupby_map_ppr_multi_distinct.q.out | 4 +- .../clientpositive/spark/groupby_ppr.q.out | 4 +- .../spark/groupby_ppr_multi_distinct.q.out | 4 +- .../spark/groupby_sort_1_23.q.out | 20 +- .../spark/groupby_sort_skew_1_23.q.out | 20 +- .../clientpositive/spark/input_part2.q.out | 8 +- .../results/clientpositive/spark/join17.q.out | 4 +- .../results/clientpositive/spark/join26.q.out | 4 +- .../results/clientpositive/spark/join32.q.out | 4 +- .../clientpositive/spark/join32_lessSize.q.out | 8 +- .../results/clientpositive/spark/join33.q.out | 4 +- .../results/clientpositive/spark/join34.q.out | 4 +- .../results/clientpositive/spark/join35.q.out | 4 +- .../results/clientpositive/spark/join9.q.out | 4 +- .../clientpositive/spark/join_map_ppr.q.out | 4 +- .../test/results/clientpositive/spark/pcr.q.out | 8 +- .../spark/reduce_deduplicate.q.out | 4 +- .../results/clientpositive/spark/sample1.q.out | 4 +- .../results/clientpositive/spark/sample2.q.out | 4 +- .../results/clientpositive/spark/sample4.q.out | 4 +- .../results/clientpositive/spark/sample5.q.out | 4 +- .../results/clientpositive/spark/sample6.q.out | 4 +- .../results/clientpositive/spark/sample7.q.out | 4 +- .../results/clientpositive/spark/stats0.q.out | 8 +- .../results/clientpositive/spark/stats3.q.out | 2 +- ql/src/test/results/clientpositive/stats0.q.out | 20 +- ql/src/test/results/clientpositive/stats3.q.out | 2 +- .../temp_table_display_colstats_tbllvl.q.out | 6 +- .../clientpositive/unicode_notation.q.out | 6 +- .../unset_table_view_property.q.out | 18 +- 158 files changed, 1360 insertions(+), 613 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/common/src/java/org/apache/hadoop/hive/common/StatsSetupConst.java ---------------------------------------------------------------------- diff --git a/common/src/java/org/apache/hadoop/hive/common/StatsSetupConst.java b/common/src/java/org/apache/hadoop/hive/common/StatsSetupConst.java index 2387407..7c27d07 100644 --- a/common/src/java/org/apache/hadoop/hive/common/StatsSetupConst.java +++ b/common/src/java/org/apache/hadoop/hive/common/StatsSetupConst.java @@ -240,6 +240,9 @@ public class StatsSetupConst { if (params == null) { throw new RuntimeException("params are null...cant set columnstatstate!"); } + if (colNames == null) { + return; + } ColumnStatsAccurate stats = parseStatsAcc(params.get(COLUMN_STATS_ACCURATE)); for (String colName : colNames) { @@ -283,13 +286,15 @@ public class StatsSetupConst { } } - public static void setBasicStatsStateForCreateTable(Map<String, String> params, String setting) { + public static void setStatsStateForCreateTable(Map<String, String> params, + List<String> cols, String setting) { if (TRUE.equals(setting)) { for (String stat : StatsSetupConst.supportedStats) { params.put(stat, "0"); } } setBasicStatsState(params, setting); + setColumnStatsState(params, cols); } private static ColumnStatsAccurate parseStatsAcc(String statsAcc) { http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/hbase-handler/src/test/results/positive/external_table_ppd.q.out ---------------------------------------------------------------------- diff --git a/hbase-handler/src/test/results/positive/external_table_ppd.q.out b/hbase-handler/src/test/results/positive/external_table_ppd.q.out index f09b880..328131a 100644 --- a/hbase-handler/src/test/results/positive/external_table_ppd.q.out +++ b/hbase-handler/src/test/results/positive/external_table_ppd.q.out @@ -56,7 +56,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"bigint_col\":\"true\",\"boolean_col\":\"true\",\"double_col\":\"true\",\"float_col\":\"true\",\"int_col\":\"true\",\"key\":\"true\",\"smallint_col\":\"true\",\"tinyint_col\":\"true\"}} hbase.table.default.storage.type binary hbase.table.name t_hive numFiles 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/hbase-handler/src/test/results/positive/hbase_binary_storage_queries.q.out ---------------------------------------------------------------------- diff --git a/hbase-handler/src/test/results/positive/hbase_binary_storage_queries.q.out b/hbase-handler/src/test/results/positive/hbase_binary_storage_queries.q.out index 3d3e82d..5404cd9 100644 --- a/hbase-handler/src/test/results/positive/hbase_binary_storage_queries.q.out +++ b/hbase-handler/src/test/results/positive/hbase_binary_storage_queries.q.out @@ -56,7 +56,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"bigint_col\":\"true\",\"boolean_col\":\"true\",\"double_col\":\"true\",\"float_col\":\"true\",\"int_col\":\"true\",\"key\":\"true\",\"smallint_col\":\"true\",\"tinyint_col\":\"true\"}} hbase.table.default.storage.type binary hbase.table.name t_hive numFiles 0 @@ -236,7 +236,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: EXTERNAL_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"bigint_col\":\"true\",\"boolean_col\":\"true\",\"double_col\":\"true\",\"float_col\":\"true\",\"int_col\":\"true\",\"key\":\"true\",\"smallint_col\":\"true\",\"tinyint_col\":\"true\"}} EXTERNAL TRUE hbase.table.name t_hive numFiles 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/hbase-handler/src/test/results/positive/hbasestats.q.out ---------------------------------------------------------------------- diff --git a/hbase-handler/src/test/results/positive/hbasestats.q.out b/hbase-handler/src/test/results/positive/hbasestats.q.out index bf902e4..b7ef954 100644 --- a/hbase-handler/src/test/results/positive/hbasestats.q.out +++ b/hbase-handler/src/test/results/positive/hbasestats.q.out @@ -38,7 +38,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"country\":\"true\",\"country_id\":\"true\",\"key\":\"true\",\"state\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out ---------------------------------------------------------------------- diff --git a/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out b/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out index 46bfef5..2ababb1 100644 --- a/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out +++ b/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out @@ -68,7 +68,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -89,7 +89,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -192,7 +192,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -224,7 +224,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -292,7 +292,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -313,7 +313,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -416,7 +416,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key @@ -448,7 +448,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true"}} bucket_count -1 column.name.delimiter , columns key http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java ---------------------------------------------------------------------- diff --git a/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java b/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java index a8adb61..ff8412c 100644 --- a/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java +++ b/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java @@ -1969,5 +1969,13 @@ public class MetaStoreUtils { } return metaException; } + + public static List<String> getColumnNames(List<FieldSchema> schema) { + List<String> cols = new ArrayList<>(); + for (FieldSchema fs : schema) { + cols.add(fs.getName()); + } + return cols; + } } http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/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 617555e..87928ee 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 @@ -4566,8 +4566,8 @@ public class DDLTask extends Task<DDLWork> implements Serializable { if (crtTbl.getLocation() == null && !tbl.isPartitioned() && conf.getBoolVar(HiveConf.ConfVars.HIVESTATSAUTOGATHER)) { - StatsSetupConst.setBasicStatsStateForCreateTable(tbl.getTTable().getParameters(), - StatsSetupConst.TRUE); + StatsSetupConst.setStatsStateForCreateTable(tbl.getTTable().getParameters(), + MetaStoreUtils.getColumnNames(tbl.getCols()), StatsSetupConst.TRUE); } // create the table http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java b/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java index 3f032c8..ceb8079 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java @@ -1752,7 +1752,7 @@ public class Hive { if (oldPart == null) { newTPart.getTPartition().setParameters(new HashMap<String,String>()); if (this.getConf().getBoolVar(HiveConf.ConfVars.HIVESTATSAUTOGATHER)) { - StatsSetupConst.setBasicStatsStateForCreateTable(newTPart.getParameters(), + StatsSetupConst.setStatsStateForCreateTable(newTPart.getParameters(), null, StatsSetupConst.TRUE); } MetaStoreUtils.populateQuickStats(HiveStatsUtils.getFileStatusRecurse(newPartPath, -1, newPartPath.getFileSystem(conf)), newTPart.getParameters()); http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java index dee6a10..e9a4ff0 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java @@ -2951,8 +2951,8 @@ public class DDLSemanticAnalyzer extends BaseSemanticAnalyzer { if (desc.getPartParams() == null) { desc.setPartParams(new HashMap<String, String>()); } - StatsSetupConst.setBasicStatsStateForCreateTable(desc.getPartParams(), - StatsSetupConst.TRUE); + StatsSetupConst.setStatsStateForCreateTable(desc.getPartParams(), + MetaStoreUtils.getColumnNames(tab.getCols()), StatsSetupConst.TRUE); } } } http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateTableDesc.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateTableDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateTableDesc.java index 7b46fcd..4320421 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateTableDesc.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateTableDesc.java @@ -28,6 +28,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.hadoop.fs.Path; 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.TableType; import org.apache.hadoop.hive.metastore.api.FieldSchema; import org.apache.hadoop.hive.metastore.api.Order; @@ -848,11 +849,11 @@ public class CreateTableDesc extends DDLDesc implements Serializable { if (!this.isCTAS && (tbl.getPath() == null || (tbl.isEmpty() && !isExternal()))) { if (!tbl.isPartitioned() && conf.getBoolVar(HiveConf.ConfVars.HIVESTATSAUTOGATHER)) { - StatsSetupConst.setBasicStatsStateForCreateTable(tbl.getTTable().getParameters(), - StatsSetupConst.TRUE); + StatsSetupConst.setStatsStateForCreateTable(tbl.getTTable().getParameters(), + MetaStoreUtils.getColumnNames(tbl.getCols()), StatsSetupConst.TRUE); } } else { - StatsSetupConst.setBasicStatsStateForCreateTable(tbl.getTTable().getParameters(), + StatsSetupConst.setStatsStateForCreateTable(tbl.getTTable().getParameters(), null, StatsSetupConst.FALSE); } return tbl; http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/queries/clientpositive/alterColumnStats.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/alterColumnStats.q b/ql/src/test/queries/clientpositive/alterColumnStats.q new file mode 100644 index 0000000..4456088 --- /dev/null +++ b/ql/src/test/queries/clientpositive/alterColumnStats.q @@ -0,0 +1,21 @@ +set hive.mapred.mode=nonstrict; + +drop table p; + +CREATE TABLE p(insert_num int, c1 tinyint, c2 smallint); + +desc formatted p; + +insert into p values (1,22,333); + +desc formatted p; + +alter table p replace columns (insert_num int, c1 STRING, c2 STRING); + +desc formatted p; + +desc formatted p c1; + +desc formatted p c2; + + http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/queries/clientpositive/alterColumnStatsPart.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/alterColumnStatsPart.q b/ql/src/test/queries/clientpositive/alterColumnStatsPart.q new file mode 100644 index 0000000..f46d9d5 --- /dev/null +++ b/ql/src/test/queries/clientpositive/alterColumnStatsPart.q @@ -0,0 +1,47 @@ +set hive.mapred.mode=nonstrict; +set hive.exec.dynamic.partition.mode=nonstrict; + +drop table p; + +CREATE TABLE p(a int, b int) partitioned by (c int); + +desc formatted p; + +insert into p partition (c=1) values (1,2); + +desc formatted p partition (c=1) a; + +desc formatted p partition (c=1); + +explain select max(a) from p where c=1; + +analyze table p partition(c=1) compute statistics for columns a; + +explain select max(a) from p where c=1; + +insert into p partition (c) values (2,3,4); + +insert into p partition (c) values (4,5,6); + +desc formatted p partition(c=4); + +explain select max(a) from p where c=4; + +alter table p add partition (c=100); + +desc formatted p partition (c=100); + +explain select max(a) from p where c=100; + +analyze table p partition(c=100) compute statistics for columns a; + +explain select max(a) from p where c=100; + +desc formatted p partition(c=100); + +insert into p partition (c=100) values (1,2); + +analyze table p partition(c=100) compute statistics for columns a; + +explain select max(a) from p where c=100; + http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientnegative/alter_file_format.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientnegative/alter_file_format.q.out b/ql/src/test/results/clientnegative/alter_file_format.q.out index e3f3b4c..4a79eaa 100644 --- a/ql/src/test/results/clientnegative/alter_file_format.q.out +++ b/ql/src/test/results/clientnegative/alter_file_format.q.out @@ -24,7 +24,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientnegative/unset_table_property.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientnegative/unset_table_property.q.out b/ql/src/test/results/clientnegative/unset_table_property.q.out index 4aedfc5..2dd047a 100644 --- a/ql/src/test/results/clientnegative/unset_table_property.q.out +++ b/ql/src/test/results/clientnegative/unset_table_property.q.out @@ -18,7 +18,7 @@ PREHOOK: query: SHOW TBLPROPERTIES testTable PREHOOK: type: SHOW_TBLPROPERTIES POSTHOOK: query: SHOW TBLPROPERTIES testTable POSTHOOK: type: SHOW_TBLPROPERTIES -COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} +COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"col1":"true","col2":"true"}} a 1 c 3 #### A masked pattern was here #### http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/alterColumnStats.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/alterColumnStats.q.out b/ql/src/test/results/clientpositive/alterColumnStats.q.out new file mode 100644 index 0000000..519a62a --- /dev/null +++ b/ql/src/test/results/clientpositive/alterColumnStats.q.out @@ -0,0 +1,158 @@ +PREHOOK: query: drop table p +PREHOOK: type: DROPTABLE +POSTHOOK: query: drop table p +POSTHOOK: type: DROPTABLE +PREHOOK: query: CREATE TABLE p(insert_num int, c1 tinyint, c2 smallint) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@p +POSTHOOK: query: CREATE TABLE p(insert_num int, c1 tinyint, c2 smallint) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@p +PREHOOK: query: desc formatted p +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +insert_num int +c1 tinyint +c2 smallint + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"c1\":\"true\",\"c2\":\"true\",\"insert_num\":\"true\"}} + numFiles 0 + numRows 0 + rawDataSize 0 + totalSize 0 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: insert into p values (1,22,333) +PREHOOK: type: QUERY +PREHOOK: Output: default@p +POSTHOOK: query: insert into p values (1,22,333) +POSTHOOK: type: QUERY +POSTHOOK: Output: default@p +POSTHOOK: Lineage: p.c1 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +POSTHOOK: Lineage: p.c2 EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ] +POSTHOOK: Lineage: p.insert_num EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +PREHOOK: query: desc formatted p +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +insert_num int +c1 tinyint +c2 smallint + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + numFiles 1 + numRows 1 + rawDataSize 8 + totalSize 9 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: alter table p replace columns (insert_num int, c1 STRING, c2 STRING) +PREHOOK: type: ALTERTABLE_REPLACECOLS +PREHOOK: Input: default@p +PREHOOK: Output: default@p +POSTHOOK: query: alter table p replace columns (insert_num int, c1 STRING, c2 STRING) +POSTHOOK: type: ALTERTABLE_REPLACECOLS +POSTHOOK: Input: default@p +POSTHOOK: Output: default@p +PREHOOK: query: desc formatted p +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +insert_num int +c1 string +c2 string + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} +#### A masked pattern was here #### + numFiles 1 + numRows 1 + rawDataSize 8 + totalSize 9 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: desc formatted p c1 +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p c1 +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment + +c1 string from deserializer +COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} +PREHOOK: query: desc formatted p c2 +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p c2 +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type min max num_nulls distinct_count avg_col_len max_col_len num_trues num_falses comment + +c2 string from deserializer +COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/alterColumnStatsPart.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/alterColumnStatsPart.q.out b/ql/src/test/results/clientpositive/alterColumnStatsPart.q.out new file mode 100644 index 0000000..672bd9f --- /dev/null +++ b/ql/src/test/results/clientpositive/alterColumnStatsPart.q.out @@ -0,0 +1,507 @@ +PREHOOK: query: drop table p +PREHOOK: type: DROPTABLE +POSTHOOK: query: drop table p +POSTHOOK: type: DROPTABLE +PREHOOK: query: CREATE TABLE p(a int, b int) partitioned by (c int) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@p +POSTHOOK: query: CREATE TABLE p(a int, b int) partitioned by (c int) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@p +PREHOOK: query: desc formatted p +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int +b int + +# Partition Information +# col_name data_type comment + +c int + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + numFiles 0 + numPartitions 0 + numRows 0 + rawDataSize 0 + totalSize 0 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: insert into p partition (c=1) values (1,2) +PREHOOK: type: QUERY +PREHOOK: Output: default@p@c=1 +POSTHOOK: query: insert into p partition (c=1) values (1,2) +POSTHOOK: type: QUERY +POSTHOOK: Output: default@p@c=1 +POSTHOOK: Lineage: p PARTITION(c=1).a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: p PARTITION(c=1).b EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: desc formatted p partition (c=1) a +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p partition (c=1) a +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int from deserializer +PREHOOK: query: desc formatted p partition (c=1) +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p partition (c=1) +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int +b int + +# Partition Information +# col_name data_type comment + +c int + +# Detailed Partition Information +Partition Value: [1] +Database: default +Table: p +#### A masked pattern was here #### +Partition Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + numFiles 1 + numRows 1 + rawDataSize 3 + totalSize 4 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: explain select max(a) from p where c=1 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=1 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: p + Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: a (type: int) + outputColumnNames: a + Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(a) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: analyze table p partition(c=1) compute statistics for columns a +PREHOOK: type: QUERY +PREHOOK: Input: default@p +PREHOOK: Input: default@p@c=1 +#### A masked pattern was here #### +POSTHOOK: query: analyze table p partition(c=1) compute statistics for columns a +POSTHOOK: type: QUERY +POSTHOOK: Input: default@p +POSTHOOK: Input: default@p@c=1 +#### A masked pattern was here #### +PREHOOK: query: explain select max(a) from p where c=1 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=1 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-0 is a root stage + +STAGE PLANS: + Stage: Stage-0 + Fetch Operator + limit: 1 + Processor Tree: + ListSink + +PREHOOK: query: insert into p partition (c) values (2,3,4) +PREHOOK: type: QUERY +PREHOOK: Output: default@p +POSTHOOK: query: insert into p partition (c) values (2,3,4) +POSTHOOK: type: QUERY +POSTHOOK: Output: default@p@c=4 +POSTHOOK: Lineage: p PARTITION(c=4).a EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: p PARTITION(c=4).b EXPRESSION [(values__tmp__table__2)values__tmp__table__2.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: insert into p partition (c) values (4,5,6) +PREHOOK: type: QUERY +PREHOOK: Output: default@p +POSTHOOK: query: insert into p partition (c) values (4,5,6) +POSTHOOK: type: QUERY +POSTHOOK: Output: default@p@c=6 +POSTHOOK: Lineage: p PARTITION(c=6).a EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: p PARTITION(c=6).b EXPRESSION [(values__tmp__table__3)values__tmp__table__3.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: desc formatted p partition(c=4) +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p partition(c=4) +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int +b int + +# Partition Information +# col_name data_type comment + +c int + +# Detailed Partition Information +Partition Value: [4] +Database: default +Table: p +#### A masked pattern was here #### +Partition Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + numFiles 1 + numRows 1 + rawDataSize 3 + totalSize 4 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: explain select max(a) from p where c=4 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=4 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: p + Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: a (type: int) + outputColumnNames: a + Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(a) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: alter table p add partition (c=100) +PREHOOK: type: ALTERTABLE_ADDPARTS +PREHOOK: Output: default@p +POSTHOOK: query: alter table p add partition (c=100) +POSTHOOK: type: ALTERTABLE_ADDPARTS +POSTHOOK: Output: default@p +POSTHOOK: Output: default@p@c=100 +PREHOOK: query: desc formatted p partition (c=100) +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p partition (c=100) +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int +b int + +# Partition Information +# col_name data_type comment + +c int + +# Detailed Partition Information +Partition Value: [100] +Database: default +Table: p +#### A masked pattern was here #### +Partition Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} + numFiles 0 + numRows 0 + rawDataSize 0 + totalSize 0 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: explain select max(a) from p where c=100 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=100 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: p + Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE + Select Operator + expressions: a (type: int) + outputColumnNames: a + Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE + Group By Operator + aggregations: max(a) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: analyze table p partition(c=100) compute statistics for columns a +PREHOOK: type: QUERY +PREHOOK: Input: default@p +PREHOOK: Input: default@p@c=100 +#### A masked pattern was here #### +POSTHOOK: query: analyze table p partition(c=100) compute statistics for columns a +POSTHOOK: type: QUERY +POSTHOOK: Input: default@p +POSTHOOK: Input: default@p@c=100 +#### A masked pattern was here #### +PREHOOK: query: explain select max(a) from p where c=100 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=100 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: p + Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE + Select Operator + expressions: a (type: int) + outputColumnNames: a + Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE + Group By Operator + aggregations: max(a) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: desc formatted p partition(c=100) +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@p +POSTHOOK: query: desc formatted p partition(c=100) +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@p +# col_name data_type comment + +a int +b int + +# Partition Information +# col_name data_type comment + +c int + +# Detailed Partition Information +Partition Value: [100] +Database: default +Table: p +#### A masked pattern was here #### +Partition Parameters: + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} + numFiles 0 + numRows 0 + rawDataSize 0 + totalSize 0 +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +InputFormat: org.apache.hadoop.mapred.TextInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: insert into p partition (c=100) values (1,2) +PREHOOK: type: QUERY +PREHOOK: Output: default@p@c=100 +POSTHOOK: query: insert into p partition (c=100) values (1,2) +POSTHOOK: type: QUERY +POSTHOOK: Output: default@p@c=100 +POSTHOOK: Lineage: p PARTITION(c=100).a EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: p PARTITION(c=100).b EXPRESSION [(values__tmp__table__4)values__tmp__table__4.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: analyze table p partition(c=100) compute statistics for columns a +PREHOOK: type: QUERY +PREHOOK: Input: default@p +PREHOOK: Input: default@p@c=100 +#### A masked pattern was here #### +POSTHOOK: query: analyze table p partition(c=100) compute statistics for columns a +POSTHOOK: type: QUERY +POSTHOOK: Input: default@p +POSTHOOK: Input: default@p@c=100 +#### A masked pattern was here #### +PREHOOK: query: explain select max(a) from p where c=100 +PREHOOK: type: QUERY +POSTHOOK: query: explain select max(a) from p where c=100 +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-0 is a root stage + +STAGE PLANS: + Stage: Stage-0 + Fetch Operator + limit: 1 + Processor Tree: + ListSink + http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/alter_file_format.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/alter_file_format.q.out b/ql/src/test/results/clientpositive/alter_file_format.q.out index ca569be..e4be931 100644 --- a/ql/src/test/results/clientpositive/alter_file_format.q.out +++ b/ql/src/test/results/clientpositive/alter_file_format.q.out @@ -24,7 +24,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 @@ -67,7 +67,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -111,7 +111,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -155,7 +155,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -199,7 +199,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -243,7 +243,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -287,7 +287,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -346,7 +346,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 @@ -394,7 +394,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -443,7 +443,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -492,7 +492,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -541,7 +541,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -590,7 +590,7 @@ Database: default Table: alter_partition_format_test #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/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 8bd9525..d67be56 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 @@ -44,7 +44,7 @@ Database: default Table: alter_table_partition_clusterby_sortby #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -93,7 +93,7 @@ Database: default Table: alter_table_partition_clusterby_sortby #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -142,7 +142,7 @@ Database: default Table: alter_table_partition_clusterby_sortby #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/alter_skewed_table.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/alter_skewed_table.q.out b/ql/src/test/results/clientpositive/alter_skewed_table.q.out index fefef4c..e553267 100644 --- a/ql/src/test/results/clientpositive/alter_skewed_table.q.out +++ b/ql/src/test/results/clientpositive/alter_skewed_table.q.out @@ -24,7 +24,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 @@ -67,7 +67,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -127,7 +127,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 @@ -170,7 +170,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 @@ -224,7 +224,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 @@ -269,7 +269,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} #### A masked pattern was here #### numFiles 0 numRows 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/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 ae6624f..c96e5b4 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 @@ -114,7 +114,7 @@ Database: default Table: mp #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/alter_table_not_sorted.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/alter_table_not_sorted.q.out b/ql/src/test/results/clientpositive/alter_table_not_sorted.q.out index 5afb7fa..5813207 100644 --- a/ql/src/test/results/clientpositive/alter_table_not_sorted.q.out +++ b/ql/src/test/results/clientpositive/alter_table_not_sorted.q.out @@ -24,7 +24,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} SORTBUCKETCOLSPREFIX TRUE numFiles 0 numRows 0 @@ -68,7 +68,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} SORTBUCKETCOLSPREFIX TRUE #### A masked pattern was here #### numFiles 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/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 b916eba..2f70095 100644 --- a/ql/src/test/results/clientpositive/autoColumnStats_3.q.out +++ b/ql/src/test/results/clientpositive/autoColumnStats_3.q.out @@ -36,7 +36,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\"}} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/autoColumnStats_4.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/autoColumnStats_4.q.out b/ql/src/test/results/clientpositive/autoColumnStats_4.q.out index 101cc63..c3ad192 100644 --- a/ql/src/test/results/clientpositive/autoColumnStats_4.q.out +++ b/ql/src/test/results/clientpositive/autoColumnStats_4.q.out @@ -24,7 +24,7 @@ Retention: 0 #### A masked pattern was here #### Table Type: MANAGED_TABLE Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} + COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"a\":\"true\",\"b\":\"true\"}} numFiles 0 numRows 0 rawDataSize 0 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/binary_output_format.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/binary_output_format.q.out b/ql/src/test/results/clientpositive/binary_output_format.q.out index 96afeb6..ddb6adf 100644 --- a/ql/src/test/results/clientpositive/binary_output_format.q.out +++ b/ql/src/test/results/clientpositive/binary_output_format.q.out @@ -95,7 +95,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -187,7 +187,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -225,7 +225,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -256,7 +256,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -278,7 +278,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -315,7 +315,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -346,7 +346,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata @@ -368,7 +368,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"mydata":"true"}} bucket_count -1 column.name.delimiter , columns mydata http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/bucket1.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/bucket1.q.out b/ql/src/test/results/clientpositive/bucket1.q.out index 78571aa..1d20473 100644 --- a/ql/src/test/results/clientpositive/bucket1.q.out +++ b/ql/src/test/results/clientpositive/bucket1.q.out @@ -107,7 +107,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} bucket_count 100 bucket_field_name key column.name.delimiter , @@ -139,7 +139,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} bucket_count 100 bucket_field_name key column.name.delimiter , http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/bucket2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/bucket2.q.out b/ql/src/test/results/clientpositive/bucket2.q.out index a8e9f90..48ccafb 100644 --- a/ql/src/test/results/clientpositive/bucket2.q.out +++ b/ql/src/test/results/clientpositive/bucket2.q.out @@ -107,7 +107,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} bucket_count 2 bucket_field_name key column.name.delimiter , @@ -139,7 +139,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} bucket_count 2 bucket_field_name key column.name.delimiter , http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out index 5478f12..70cd53c 100644 --- a/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out +++ b/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out @@ -236,7 +236,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2 @@ -370,7 +370,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out index e335683..d0c3a1a 100644 --- a/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out +++ b/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out @@ -220,7 +220,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2 @@ -354,7 +354,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2 http://git-wip-us.apache.org/repos/asf/hive/blob/52a71e96/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out index bd5a438..eed4a5a 100644 --- a/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out +++ b/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out @@ -220,7 +220,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2 @@ -354,7 +354,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: - COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} + COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value1":"true","value2":"true"}} bucket_count -1 column.name.delimiter , columns key,value1,value2
