diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsNoJobTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsNoJobTask.java index 07efb8f..0837db2 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsNoJobTask.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsNoJobTask.java @@ -153,7 +153,9 @@ public void run() { partn.getInputFormatClass(), jc); InputSplit dummySplit = new FileSplit(file.getPath(), 0, 0, new String[] { partn.getLocation() }); - Object recordReader = inputFormat.getRecordReader(dummySplit, jc, Reporter.NULL); + org.apache.hadoop.mapred.RecordReader recordReader = + (org.apache.hadoop.mapred.RecordReader) + inputFormat.getRecordReader(dummySplit, jc, Reporter.NULL); StatsProvidingRecordReader statsRR; if (recordReader instanceof StatsProvidingRecordReader) { statsRR = (StatsProvidingRecordReader) recordReader; @@ -163,6 +165,7 @@ public void run() { numFiles += 1; statsAvailable = true; } + recordReader.close(); } } @@ -254,6 +257,7 @@ private int aggregateStats(ExecutorService threadPool) { numFiles += 1; statsAvailable = true; } + recordReader.close(); } }