From 1810ab009d4c262986b0988b114b7921ab663c9b Mon Sep 17 00:00:00 2001 From: Andrii Rosa Date: Thu, 5 Jul 2018 16:42:58 -0400 Subject: [PATCH] Fix NPE when getting statistics for date column --- .../hadoop/hive/metastore/StatObjectConverter.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/StatObjectConverter.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/StatObjectConverter.java index ef2d670ca4..7a0b21b258 100644 --- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/StatObjectConverter.java +++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/StatObjectConverter.java @@ -466,8 +466,14 @@ public static ColumnStatisticsObj getPartitionColumnStatisticsObj( } else if (colType.equals("date")) { DateColumnStatsDataInspector dateStats = new DateColumnStatsDataInspector(); dateStats.setNumNulls(mStatsObj.getNumNulls()); - dateStats.setHighValue(new Date(mStatsObj.getLongHighValue())); - dateStats.setLowValue(new Date(mStatsObj.getLongLowValue())); + Long highValue = mStatsObj.getLongHighValue(); + if (highValue != null) { + dateStats.setHighValue(new Date(highValue)); + } + Long lowValue = mStatsObj.getLongLowValue(); + if (lowValue != null) { + dateStats.setLowValue(new Date(lowValue)); + } dateStats.setNumDVs(mStatsObj.getNumDVs()); dateStats.setBitVectors((mStatsObj.getBitVector()==null||!enableBitVector)? null : mStatsObj.getBitVector()); colStatsData.setDateStats(dateStats); -- 2.17.1