Repository: hive Updated Branches: refs/heads/master e569ef090 -> 788daf609
HIVE-20115 : Acid tables should not use footer scan for analyze (Sergey Shelukhin, reviewed by Eugene Koifman) Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/788daf60 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/788daf60 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/788daf60 Branch: refs/heads/master Commit: 788daf609fd9c666dcb42451539917edd4d820ad Parents: e569ef0 Author: sergey <[email protected]> Authored: Sat Jul 21 12:16:36 2018 -0700 Committer: sergey <[email protected]> Committed: Sat Jul 21 12:16:36 2018 -0700 ---------------------------------------------------------------------- .../hive/ql/optimizer/GenMRTableScan1.java | 5 +- .../hive/ql/parse/ProcessAnalyzeTable.java | 5 +- .../hadoop/hive/ql/parse/TaskCompiler.java | 6 +- .../parse/spark/SparkProcessAnalyzeTable.java | 5 +- .../hive/ql/stats/BasicStatsNoJobTask.java | 9 + .../queries/clientpositive/acid_no_buckets.q | 8 + .../clientpositive/acid_table_stats.q.out | 28 +-- .../materialized_view_create_rewrite.q.out | 58 ++--- .../clientpositive/llap/acid_no_buckets.q.out | 210 +++++++++++++++++-- .../materialized_view_create_rewrite_4.q.out | 10 +- .../materialized_view_create_rewrite_5.q.out | 2 +- 11 files changed, 279 insertions(+), 67 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java index 64f9c70..6295d7f 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java @@ -28,6 +28,7 @@ import org.apache.hadoop.hive.ql.exec.TableScanOperator; import org.apache.hadoop.hive.ql.exec.Task; import org.apache.hadoop.hive.ql.exec.TaskFactory; import org.apache.hadoop.hive.ql.exec.mr.MapRedTask; +import org.apache.hadoop.hive.ql.io.AcidUtils; import org.apache.hadoop.hive.ql.io.orc.OrcInputFormat; import org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat; import org.apache.hadoop.hive.ql.lib.Node; @@ -43,6 +44,7 @@ import org.apache.hadoop.hive.ql.plan.StatsWork; import org.apache.hadoop.hive.ql.plan.BasicStatsWork; import org.apache.hadoop.hive.ql.plan.MapredWork; import org.apache.hadoop.hive.ql.plan.OperatorDesc; +import org.apache.hadoop.hive.ql.stats.BasicStatsNoJobTask; import org.apache.hadoop.mapred.InputFormat; /** @@ -84,8 +86,7 @@ public class GenMRTableScan1 implements NodeProcessor { if (parseCtx.getQueryProperties().isAnalyzeCommand()) { boolean noScan = parseCtx.getQueryProperties().isNoScanAnalyzeCommand(); - if (OrcInputFormat.class.isAssignableFrom(inputFormat) || - MapredParquetInputFormat.class.isAssignableFrom(inputFormat)) { + if (BasicStatsNoJobTask.canUseFooterScan(table, inputFormat)) { // For ORC and Parquet, all the following statements are the same // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS noscan; http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/java/org/apache/hadoop/hive/ql/parse/ProcessAnalyzeTable.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/ProcessAnalyzeTable.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/ProcessAnalyzeTable.java index 03cceac..31c5c4b 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/ProcessAnalyzeTable.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/ProcessAnalyzeTable.java @@ -22,6 +22,7 @@ import java.util.List; import java.util.Set; import java.util.Stack; +import org.apache.hadoop.hive.ql.io.AcidUtils; import org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,6 +40,7 @@ import org.apache.hadoop.hive.ql.plan.StatsWork; import org.apache.hadoop.hive.ql.plan.MapWork; import org.apache.hadoop.hive.ql.plan.BasicStatsWork; import org.apache.hadoop.hive.ql.plan.TezWork; +import org.apache.hadoop.hive.ql.stats.BasicStatsNoJobTask; import org.apache.hadoop.mapred.InputFormat; /** @@ -86,8 +88,7 @@ public class ProcessAnalyzeTable implements NodeProcessor { assert alias != null; TezWork tezWork = context.currentTask.getWork(); - if (OrcInputFormat.class.isAssignableFrom(inputFormat) || - MapredParquetInputFormat.class.isAssignableFrom(inputFormat)) { + if (BasicStatsNoJobTask.canUseFooterScan(table, inputFormat)) { // For ORC & Parquet, all the following statements are the same // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS noscan; http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java index 49709e5..7a2a2c7 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java @@ -20,6 +20,7 @@ package org.apache.hadoop.hive.ql.parse; import com.google.common.collect.Interner; import com.google.common.collect.Interners; + import org.apache.hadoop.fs.Path; import org.apache.hadoop.hive.common.HiveStatsUtils; import org.apache.hadoop.hive.conf.HiveConf; @@ -62,6 +63,7 @@ import org.apache.hadoop.hive.ql.plan.StatsWork; import org.apache.hadoop.hive.ql.plan.TableDesc; import org.apache.hadoop.hive.ql.session.SessionState; import org.apache.hadoop.hive.ql.session.SessionState.LogHelper; +import org.apache.hadoop.hive.ql.stats.BasicStatsNoJobTask; import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.DefaultFetchFormatter; import org.apache.hadoop.hive.serde2.NoOpFetchFormatter; @@ -381,7 +383,9 @@ public abstract class TaskCompiler { TableSpec tableSpec = new TableSpec(table, partitions); tableScan.getConf().getTableMetadata().setTableSpec(tableSpec); - if (inputFormat.equals(OrcInputFormat.class)) { + // Note: this should probably use BasicStatsNoJobTask.canUseFooterScan, but it doesn't check + // Parquet for some reason. I'm keeping the existing behavior for now. + if (inputFormat.equals(OrcInputFormat.class) && !AcidUtils.isTransactionalTable(table)) { // For ORC, there is no Tez Job for table stats. StatsWork columnStatsWork = new StatsWork(table, parseContext.getConf()); columnStatsWork.setFooterScan(); http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/java/org/apache/hadoop/hive/ql/parse/spark/SparkProcessAnalyzeTable.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/spark/SparkProcessAnalyzeTable.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/spark/SparkProcessAnalyzeTable.java index 28d4de7..a9ba302 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/spark/SparkProcessAnalyzeTable.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/spark/SparkProcessAnalyzeTable.java @@ -22,6 +22,7 @@ import java.util.List; import java.util.Set; import java.util.Stack; +import org.apache.hadoop.hive.ql.io.AcidUtils; import org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,6 +44,7 @@ import org.apache.hadoop.hive.ql.plan.StatsWork; import org.apache.hadoop.hive.ql.plan.MapWork; import org.apache.hadoop.hive.ql.plan.SparkWork; import org.apache.hadoop.hive.ql.plan.BasicStatsWork; +import org.apache.hadoop.hive.ql.stats.BasicStatsNoJobTask; import org.apache.hadoop.mapred.InputFormat; import com.google.common.base.Preconditions; @@ -96,8 +98,7 @@ public class SparkProcessAnalyzeTable implements NodeProcessor { Preconditions.checkArgument(alias != null, "AssertionError: expected alias to be not null"); SparkWork sparkWork = context.currentTask.getWork(); - if (OrcInputFormat.class.isAssignableFrom(inputFormat) || - MapredParquetInputFormat.class.isAssignableFrom(inputFormat)) { + if (BasicStatsNoJobTask.canUseFooterScan(table, inputFormat)) { // For ORC & Parquet, all the following statements are the same // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS noscan; http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStatsNoJobTask.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStatsNoJobTask.java b/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStatsNoJobTask.java index 3128ee8..fd06098 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStatsNoJobTask.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStatsNoJobTask.java @@ -39,6 +39,8 @@ import org.apache.hadoop.hive.ql.exec.StatsTask; import org.apache.hadoop.hive.ql.exec.Utilities; import org.apache.hadoop.hive.ql.io.AcidUtils; import org.apache.hadoop.hive.ql.io.StatsProvidingRecordReader; +import org.apache.hadoop.hive.ql.io.orc.OrcInputFormat; +import org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat; import org.apache.hadoop.hive.ql.metadata.Hive; import org.apache.hadoop.hive.ql.metadata.HiveException; import org.apache.hadoop.hive.ql.metadata.Partition; @@ -71,6 +73,8 @@ import com.google.common.collect.Multimaps; * faster to compute the table/partition statistics by reading the footer than scanning all the * rows. This task can be used for computing basic stats like numFiles, numRows, fileSize, * rawDataSize from ORC footer. + * However, this cannot be used for full ACID tables, since some of the files may contain updates + * and deletes to existing rows, so summing up the per-file row counts is invalid. **/ public class BasicStatsNoJobTask implements IStatsProcessor { @@ -86,6 +90,11 @@ public class BasicStatsNoJobTask implements IStatsProcessor { console = new LogHelper(LOG); } + public static boolean canUseFooterScan( + Table table, Class<? extends InputFormat> inputFormat) { + return (OrcInputFormat.class.isAssignableFrom(inputFormat) && !AcidUtils.isFullAcidTable(table)) + || MapredParquetInputFormat.class.isAssignableFrom(inputFormat); + } @Override public void initialize(CompilationOpContext opContext) { http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/test/queries/clientpositive/acid_no_buckets.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/acid_no_buckets.q b/ql/src/test/queries/clientpositive/acid_no_buckets.q index bcf9e06..552010a 100644 --- a/ql/src/test/queries/clientpositive/acid_no_buckets.q +++ b/ql/src/test/queries/clientpositive/acid_no_buckets.q @@ -28,8 +28,16 @@ select ds, hr, key, value from srcpart_acid where value like '%updated' order by insert into srcpart_acid PARTITION (ds='2008-04-08', hr=='11') values ('1001','val1001'),('1002','val1002'),('1003','val1003'); select ds, hr, key, value from srcpart_acid where cast(key as integer) > 1000 order by ds, hr, cast(key as integer); +describe formatted srcpart_acid; +describe formatted srcpart_acid key; + analyze table srcpart_acid PARTITION(ds, hr) compute statistics; analyze table srcpart_acid PARTITION(ds, hr) compute statistics for columns; + +-- make sure the stats stay the same after analyze (insert and update above also update stats) +describe formatted srcpart_acid; +describe formatted srcpart_acid key; + explain delete from srcpart_acid where key in( '1001', '213', '43'); --delete some rows from initial load, some that were updated and some that were inserted delete from srcpart_acid where key in( '1001', '213', '43'); http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/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 841a5a4..2fe4f97 100644 --- a/ql/src/test/results/clientpositive/acid_table_stats.q.out +++ b/ql/src/test/results/clientpositive/acid_table_stats.q.out @@ -182,11 +182,13 @@ POSTHOOK: Input: default@acid@ds=2008-04-08 PREHOOK: query: analyze table acid partition(ds='2008-04-08') compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@acid +PREHOOK: Input: default@acid@ds=2008-04-08 PREHOOK: Output: default@acid PREHOOK: Output: default@acid@ds=2008-04-08 POSTHOOK: query: analyze table acid partition(ds='2008-04-08') compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@acid +POSTHOOK: Input: default@acid@ds=2008-04-08 POSTHOOK: Output: default@acid POSTHOOK: Output: default@acid@ds=2008-04-08 PREHOOK: query: desc formatted acid partition(ds='2008-04-08') @@ -209,10 +211,9 @@ Database: default Table: acid #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} numFiles 2 numRows 1000 - rawDataSize 208000 + rawDataSize 0 totalSize 4063 #### A masked pattern was here #### @@ -260,10 +261,10 @@ Database: default Table: acid #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} + COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"key\":\"true\",\"value\":\"true\"}} numFiles 2 numRows 1000 - rawDataSize 208000 + rawDataSize 0 totalSize 4063 #### A masked pattern was here #### @@ -303,9 +304,9 @@ STAGE PLANS: TableScan alias: acid filterExpr: (ds = '2008-04-08') (type: boolean) - Statistics: Num rows: 1000 Data size: 208000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1000 Data size: 40630 Basic stats: COMPLETE Column stats: NONE Select Operator - Statistics: Num rows: 1000 Data size: 208000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1000 Data size: 40630 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() mode: hash @@ -390,7 +391,7 @@ Table: acid Partition Parameters: numFiles 4 numRows 3000 - rawDataSize 208000 + rawDataSize 0 totalSize 8118 #### A masked pattern was here #### @@ -407,11 +408,13 @@ Storage Desc Params: PREHOOK: query: analyze table acid partition(ds='2008-04-08') compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@acid +PREHOOK: Input: default@acid@ds=2008-04-08 PREHOOK: Output: default@acid PREHOOK: Output: default@acid@ds=2008-04-08 POSTHOOK: query: analyze table acid partition(ds='2008-04-08') compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@acid +POSTHOOK: Input: default@acid@ds=2008-04-08 POSTHOOK: Output: default@acid POSTHOOK: Output: default@acid@ds=2008-04-08 PREHOOK: query: desc formatted acid partition(ds='2008-04-08') @@ -434,10 +437,9 @@ Database: default Table: acid #### A masked pattern was here #### Partition Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} numFiles 4 numRows 2000 - rawDataSize 416000 + rawDataSize 0 totalSize 8118 #### A masked pattern was here #### @@ -466,9 +468,9 @@ STAGE PLANS: TableScan alias: acid filterExpr: (ds = '2008-04-08') (type: boolean) - Statistics: Num rows: 2000 Data size: 416000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2000 Data size: 81180 Basic stats: COMPLETE Column stats: NONE Select Operator - Statistics: Num rows: 2000 Data size: 416000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2000 Data size: 81180 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() mode: hash @@ -539,11 +541,11 @@ STAGE PLANS: TableScan alias: acid filterExpr: (ds = '2008-04-08') (type: boolean) - Statistics: Num rows: 2000 Data size: 416000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2000 Data size: 81180 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key (type: string) outputColumnNames: key - Statistics: Num rows: 2000 Data size: 416000 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2000 Data size: 81180 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: max(key) mode: hash http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/test/results/clientpositive/beeline/materialized_view_create_rewrite.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/beeline/materialized_view_create_rewrite.q.out b/ql/src/test/results/clientpositive/beeline/materialized_view_create_rewrite.q.out index 4db5d70..7813aac 100644 --- a/ql/src/test/results/clientpositive/beeline/materialized_view_create_rewrite.q.out +++ b/ql/src/test/results/clientpositive/beeline/materialized_view_create_rewrite.q.out @@ -175,32 +175,32 @@ STAGE PLANS: TableScan alias: cmv_basetable_n10 filterExpr: (a = 3) (type: boolean) - Statistics: Num rows: 5 Data size: 1205 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 5 Data size: 9740 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (a = 3) (type: boolean) - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: c (type: decimal(10,2)) outputColumnNames: _col0 - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator sort order: - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: decimal(10,2)) TableScan alias: cmv_basetable_n10 filterExpr: ((d = 3) and (a = 3)) (type: boolean) - Statistics: Num rows: 5 Data size: 1205 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 5 Data size: 9740 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: ((a = 3) and (d = 3)) (type: boolean) - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: c (type: decimal(10,2)) outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator sort order: - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: decimal(10,2)) Reduce Operator Tree: Join Operator @@ -210,14 +210,14 @@ STAGE PLANS: 0 1 outputColumnNames: _col0, _col1 - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: 3 (type: int), _col0 (type: decimal(10,2)), 3 (type: int), _col1 (type: decimal(10,2)) outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat @@ -298,17 +298,17 @@ STAGE PLANS: TableScan alias: cmv_basetable_n10 filterExpr: ((a = 3) and (d = 3)) (type: boolean) - Statistics: Num rows: 5 Data size: 1205 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 5 Data size: 9740 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: ((a = 3) and (d = 3)) (type: boolean) - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: c (type: decimal(10,2)) outputColumnNames: _col1 - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator sort order: - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: decimal(10,2)) TableScan alias: default.cmv_mat_view2_n4 @@ -325,14 +325,14 @@ STAGE PLANS: 0 1 outputColumnNames: _col0, _col1, _col6 - Statistics: Num rows: 2 Data size: 716 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 4130 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col0 (type: int), _col1 (type: decimal(10,2)), _col0 (type: int), _col6 (type: decimal(10,2)) outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 2 Data size: 716 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 4130 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 2 Data size: 716 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 4130 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat @@ -399,32 +399,32 @@ STAGE PLANS: TableScan alias: cmv_basetable_n10 filterExpr: (a = 3) (type: boolean) - Statistics: Num rows: 5 Data size: 1205 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 5 Data size: 9740 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (a = 3) (type: boolean) - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: c (type: decimal(10,2)) outputColumnNames: _col0 - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator sort order: - Statistics: Num rows: 2 Data size: 482 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 3896 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: decimal(10,2)) TableScan alias: cmv_basetable_n10 filterExpr: ((d = 3) and (a = 3)) (type: boolean) - Statistics: Num rows: 5 Data size: 1205 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 5 Data size: 9740 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: ((a = 3) and (d = 3)) (type: boolean) - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: c (type: decimal(10,2)) outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator sort order: - Statistics: Num rows: 1 Data size: 241 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 1948 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: decimal(10,2)) Reduce Operator Tree: Join Operator @@ -434,14 +434,14 @@ STAGE PLANS: 0 1 outputColumnNames: _col0, _col1 - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: 3 (type: int), _col0 (type: decimal(10,2)), 3 (type: int), _col1 (type: decimal(10,2)) outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 2 Data size: 966 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 7794 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/test/results/clientpositive/llap/acid_no_buckets.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/llap/acid_no_buckets.q.out b/ql/src/test/results/clientpositive/llap/acid_no_buckets.q.out index 36a6a5d..9762de6 100644 --- a/ql/src/test/results/clientpositive/llap/acid_no_buckets.q.out +++ b/ql/src/test/results/clientpositive/llap/acid_no_buckets.q.out @@ -58,6 +58,10 @@ POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=11 PREHOOK: query: analyze table srcpart_acid PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acid +PREHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acid PREHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=12 @@ -66,6 +70,10 @@ PREHOOK: Output: default@srcpart_acid@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acid PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acid +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acid POSTHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=12 @@ -239,9 +247,74 @@ POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=12 2008-04-08 11 1001 val1001 2008-04-08 11 1002 val1002 2008-04-08 11 1003 val1003 +PREHOOK: query: describe formatted srcpart_acid +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@srcpart_acid +POSTHOOK: query: describe formatted srcpart_acid +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@srcpart_acid +# col_name data_type comment +key string +value string + +# Partition Information +# col_name data_type comment +ds string +hr string + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + bucketing_version 2 + numFiles 9 + numPartitions 4 + numRows 2003 + rawDataSize 0 + totalSize 17988 + transactional true + transactional_properties default +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde +InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: describe formatted srcpart_acid key +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@srcpart_acid +POSTHOOK: query: describe formatted srcpart_acid key +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@srcpart_acid +col_name key +data_type string +min +max +num_nulls 0 +distinct_count 316 +avg_col_len 2.812 +max_col_len 3 +num_trues +num_falses +bitVector HL +comment from deserializer +COLUMN_STATS_ACCURATE {} PREHOOK: query: analyze table srcpart_acid PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acid +PREHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acid PREHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=12 @@ -250,6 +323,10 @@ PREHOOK: Output: default@srcpart_acid@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acid PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acid +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acid@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acid POSTHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=12 @@ -281,6 +358,67 @@ POSTHOOK: Output: default@srcpart_acid@ds=2008-04-08/hr=12 POSTHOOK: Output: default@srcpart_acid@ds=2008-04-09/hr=11 POSTHOOK: Output: default@srcpart_acid@ds=2008-04-09/hr=12 #### A masked pattern was here #### +PREHOOK: query: describe formatted srcpart_acid +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@srcpart_acid +POSTHOOK: query: describe formatted srcpart_acid +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@srcpart_acid +# col_name data_type comment +key string +value string + +# Partition Information +# col_name data_type comment +ds string +hr string + +# Detailed Table Information +Database: default +#### A masked pattern was here #### +Retention: 0 +#### A masked pattern was here #### +Table Type: MANAGED_TABLE +Table Parameters: + bucketing_version 2 + numFiles 9 + numPartitions 4 + numRows 2003 + rawDataSize 0 + totalSize 17988 + transactional true + transactional_properties default +#### A masked pattern was here #### + +# Storage Information +SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde +InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat +OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat +Compressed: No +Num Buckets: -1 +Bucket Columns: [] +Sort Columns: [] +Storage Desc Params: + serialization.format 1 +PREHOOK: query: describe formatted srcpart_acid key +PREHOOK: type: DESCTABLE +PREHOOK: Input: default@srcpart_acid +POSTHOOK: query: describe formatted srcpart_acid key +POSTHOOK: type: DESCTABLE +POSTHOOK: Input: default@srcpart_acid +col_name key +data_type string +min +max +num_nulls 0 +distinct_count 316 +avg_col_len 2.812 +max_col_len 3 +num_trues +num_falses +bitVector HL +comment from deserializer +COLUMN_STATS_ACCURATE {} PREHOOK: query: explain delete from srcpart_acid where key in( '1001', '213', '43') PREHOOK: type: QUERY POSTHOOK: query: explain delete from srcpart_acid where key in( '1001', '213', '43') @@ -304,19 +442,19 @@ STAGE PLANS: TableScan alias: srcpart_acid filterExpr: (key) IN ('1001', '213', '43') (type: boolean) - Statistics: Num rows: 2015 Data size: 916825 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 2003 Data size: 911365 Basic stats: COMPLETE Column stats: PARTIAL Filter Operator predicate: (key) IN ('1001', '213', '43') (type: boolean) - Statistics: Num rows: 101 Data size: 45955 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 45500 Basic stats: COMPLETE Column stats: PARTIAL Select Operator expressions: ROW__ID (type: struct<writeid:bigint,bucketid:int,rowid:bigint>), ds (type: string), hr (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL Reduce Output Operator key expressions: _col0 (type: struct<writeid:bigint,bucketid:int,rowid:bigint>) sort order: + Map-reduce partition columns: UDFToInteger(_col0) (type: int) - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL value expressions: _col1 (type: string), _col2 (type: string) Execution mode: llap LLAP IO: may be used (ACID table) @@ -326,10 +464,10 @@ STAGE PLANS: Select Operator expressions: KEY.reducesinkkey0 (type: struct<writeid:bigint,bucketid:int,rowid:bigint>), VALUE._col0 (type: string), VALUE._col1 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL File Output Operator compressed: false - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL table: input format: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat output format: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat @@ -561,6 +699,10 @@ POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=11 PREHOOK: query: analyze table srcpart_acidb PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidb +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidb PREHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=12 @@ -569,6 +711,10 @@ PREHOOK: Output: default@srcpart_acidb@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidb PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidb +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidb POSTHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=12 @@ -745,6 +891,10 @@ POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=12 PREHOOK: query: analyze table srcpart_acidb PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidb +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidb PREHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=12 @@ -753,6 +903,10 @@ PREHOOK: Output: default@srcpart_acidb@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidb PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidb +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidb@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidb POSTHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidb@ds=2008-04-08/hr=12 @@ -807,19 +961,19 @@ STAGE PLANS: TableScan alias: srcpart_acidb filterExpr: (key) IN ('1001', '213', '43') (type: boolean) - Statistics: Num rows: 2015 Data size: 916825 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 2003 Data size: 911365 Basic stats: COMPLETE Column stats: PARTIAL Filter Operator predicate: (key) IN ('1001', '213', '43') (type: boolean) - Statistics: Num rows: 101 Data size: 45955 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 45500 Basic stats: COMPLETE Column stats: PARTIAL Select Operator expressions: ROW__ID (type: struct<writeid:bigint,bucketid:int,rowid:bigint>), ds (type: string), hr (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL Reduce Output Operator key expressions: _col0 (type: struct<writeid:bigint,bucketid:int,rowid:bigint>) sort order: + Map-reduce partition columns: UDFToInteger(_col0) (type: int) - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL value expressions: _col1 (type: string), _col2 (type: string) Execution mode: llap LLAP IO: may be used (ACID table) @@ -829,10 +983,10 @@ STAGE PLANS: Select Operator expressions: KEY.reducesinkkey0 (type: struct<writeid:bigint,bucketid:int,rowid:bigint>), VALUE._col0 (type: string), VALUE._col1 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL File Output Operator compressed: false - Statistics: Num rows: 101 Data size: 44844 Basic stats: COMPLETE Column stats: PARTIAL + Statistics: Num rows: 100 Data size: 44400 Basic stats: COMPLETE Column stats: PARTIAL table: input format: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat output format: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat @@ -1064,6 +1218,10 @@ POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=11 PREHOOK: query: analyze table srcpart_acidv PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidv +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidv PREHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=12 @@ -1072,6 +1230,10 @@ PREHOOK: Output: default@srcpart_acidv@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidv PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidv +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidv POSTHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=12 @@ -1264,6 +1426,10 @@ POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=12 PREHOOK: query: analyze table srcpart_acidv PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidv +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidv PREHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=12 @@ -1272,6 +1438,10 @@ PREHOOK: Output: default@srcpart_acidv@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidv PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidv +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidv@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidv POSTHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidv@ds=2008-04-08/hr=12 @@ -1850,6 +2020,10 @@ POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=11 PREHOOK: query: analyze table srcpart_acidvb PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidvb +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidvb PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=12 @@ -1858,6 +2032,10 @@ PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidvb PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidvb +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidvb POSTHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=12 @@ -2050,6 +2228,10 @@ POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=12 PREHOOK: query: analyze table srcpart_acidvb PARTITION(ds, hr) compute statistics PREHOOK: type: QUERY PREHOOK: Input: default@srcpart_acidvb +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=11 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=12 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=11 +PREHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=12 PREHOOK: Output: default@srcpart_acidvb PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=11 PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=12 @@ -2058,6 +2240,10 @@ PREHOOK: Output: default@srcpart_acidvb@ds=2008-04-09/hr=12 POSTHOOK: query: analyze table srcpart_acidvb PARTITION(ds, hr) compute statistics POSTHOOK: type: QUERY POSTHOOK: Input: default@srcpart_acidvb +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=11 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-08/hr=12 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=11 +POSTHOOK: Input: default@srcpart_acidvb@ds=2008-04-09/hr=12 POSTHOOK: Output: default@srcpart_acidvb POSTHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=11 POSTHOOK: Output: default@srcpart_acidvb@ds=2008-04-08/hr=12 http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_4.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_4.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_4.q.out index eda3985..bfa204e 100644 --- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_4.q.out +++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_4.q.out @@ -265,11 +265,11 @@ Retention: 0 #### A masked pattern was here #### Table Type: MATERIALIZED_VIEW Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"_c2\":\"true\",\"a\":\"true\",\"c\":\"true\"}} + COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"_c2\":\"true\",\"a\":\"true\",\"c\":\"true\"}} bucketing_version 2 numFiles 2 numRows 2 - rawDataSize 248 + rawDataSize 0 totalSize 736 transactional true transactional_properties default @@ -494,11 +494,11 @@ Retention: 0 #### A masked pattern was here #### Table Type: MATERIALIZED_VIEW Table Parameters: - COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\",\"COLUMN_STATS\":{\"_c2\":\"true\",\"a\":\"true\",\"c\":\"true\"}} + COLUMN_STATS_ACCURATE {\"COLUMN_STATS\":{\"_c2\":\"true\",\"a\":\"true\",\"c\":\"true\"}} bucketing_version 2 numFiles 2 numRows 2 - rawDataSize 248 + rawDataSize 0 totalSize 736 transactional true transactional_properties default @@ -948,7 +948,7 @@ Table Parameters: bucketing_version 2 numFiles 3 numRows 3 - rawDataSize 248 + rawDataSize 0 totalSize 1508 transactional true transactional_properties default http://git-wip-us.apache.org/repos/asf/hive/blob/788daf60/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_5.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_5.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_5.q.out index 99832ff..44eca6d 100644 --- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_5.q.out +++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_5.q.out @@ -405,7 +405,7 @@ Table Parameters: bucketing_version 2 numFiles 2 numRows 5 - rawDataSize 348 + rawDataSize 0 totalSize 1071 transactional true transactional_properties default
