diff --git ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java index eb46e32..3e3e53e 100644 --- ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java @@ -1000,7 +1000,13 @@ public static ColStatistics getColStatisticsFromExpression(HiveConf conf, Statis if (encd.getIsPartitionColOrVirtualCol()) { - // vitual columns + ColStatistics colStats = parentStats.getColumnStatisticsFromColName(colName); + if (colStats != null) { + /* If statistics for the column already exist use it. */ + return colStats; + } + + // virtual columns colType = encd.getTypeInfo().getTypeName(); countDistincts = numRows; oi = encd.getWritableObjectInspector();