diff --git a/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/FileReader.java b/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/FileReader.java index 54a90d49dc7..02f44c6b12c 100644 --- a/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/FileReader.java +++ b/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/FileReader.java @@ -20,10 +20,11 @@ import org.apache.hadoop.fs.Path; +import java.io.Closeable; import java.io.IOException; import java.util.List; -interface FileReader { +interface FileReader extends Closeable { Path getFilePath(); /** @@ -40,5 +41,4 @@ interface FileReader { */ List next() throws IOException, ParseException; - void close(); } diff --git a/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/HdfsSpout.java b/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/HdfsSpout.java index 06896b2ef54..487bac5b3c5 100644 --- a/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/HdfsSpout.java +++ b/external/storm-hdfs/src/main/java/org/apache/storm/hdfs/spout/HdfsSpout.java @@ -256,7 +256,11 @@ private void closeReaderAndResetTrackers() { tracker.offsets.clear(); retryList.clear(); - reader.close(); + try { + reader.close(); + } catch (IOException e) { + LOG.error("File Closing Failed", e); + } reader = null; releaseLockAndLog(lock, spoutId); lock = null;