diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java index 4d69f4c334..18a27c4172 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java @@ -541,8 +541,8 @@ else if (udaf instanceof GenericUDAFCount) { hive.getMSC().getTableColumnStatistics( tbl.getDbName(), tbl.getTableName(), Lists.newArrayList(colName), - tableSnapshot.getTxnId(), - tableSnapshot.getValidWriteIdList()); + tableSnapshot != null ? tableSnapshot.getTxnId() : -1, + tableSnapshot != null ? tableSnapshot.getValidWriteIdList() : null); if (stats.isEmpty()) { Logger.debug("No stats for " + tbl.getTableName() + " column " + colName); return null; @@ -685,8 +685,8 @@ else if (udaf instanceof GenericUDAFCount) { ColumnStatisticsData statData = hive.getMSC().getTableColumnStatistics( tbl.getDbName(), tbl.getTableName(), Lists.newArrayList(colName), - tableSnapshot.getTxnId(), - tableSnapshot.getValidWriteIdList()) + tableSnapshot != null ? tableSnapshot.getTxnId() : -1, + tableSnapshot != null ? tableSnapshot.getValidWriteIdList() : null) .get(0).getStatsData(); String name = colDesc.getTypeString().toUpperCase(); switch (type) {