From 4c87602f1d796409cd8e17e0ed5f21518b01b3a0 Mon Sep 17 00:00:00 2001 From: Ashutosh Chauhan Date: Wed, 2 May 2018 17:31:03 -0700 Subject: [PATCH] HIVE-19390 : Useless error messages logged for dummy table stats --- ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java index cef87f5957..952b4abb2a 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java @@ -59,6 +59,7 @@ import org.apache.hadoop.hive.ql.metadata.Table; import org.apache.hadoop.hive.ql.parse.ColumnStatsList; import org.apache.hadoop.hive.ql.parse.PrunedPartitionList; +import org.apache.hadoop.hive.ql.parse.SemanticAnalyzer; import org.apache.hadoop.hive.ql.plan.ColStatistics; import org.apache.hadoop.hive.ql.plan.ColStatistics.Range; import org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc; @@ -1054,8 +1055,8 @@ else if(colTypeLowerCase.equals(serdeConstants.SMALLINT_TYPE_NAME)){ cs.setAvgColLen(getAvgColLenOf(conf,cinfo.getObjectInspector(), cinfo.getTypeName())); } else if (colTypeLowerCase.equals(serdeConstants.BOOLEAN_TYPE_NAME)) { cs.setCountDistint(2); - cs.setNumTrues(Math.max(1, (long)numRows/2)); - cs.setNumFalses(Math.max(1, (long)numRows/2)); + cs.setNumTrues(Math.max(1, numRows/2)); + cs.setNumFalses(Math.max(1, numRows/2)); cs.setAvgColLen(JavaDataModel.get().primitive1()); } else if (colTypeLowerCase.equals(serdeConstants.TIMESTAMP_TYPE_NAME) || colTypeLowerCase.equals(serdeConstants.TIMESTAMPLOCALTZ_TYPE_NAME)) { @@ -1117,6 +1118,12 @@ else if(colTypeLowerCase.equals(serdeConstants.SMALLINT_TYPE_NAME)){ // Retrieve stats from metastore String dbName = table.getDbName(); String tabName = table.getTableName(); + if (SemanticAnalyzer.DUMMY_DATABASE.equals(dbName) && + SemanticAnalyzer.DUMMY_TABLE.equals(tabName)) { + // insert into values gets written into insert from select dummy_table + // This table is dummy and has no stats + return null; + } List stats = null; try { List colStat = Hive.get().getTableColumnStatistics( -- 2.15.1 (Apple Git-101)