NIFI-259: Applied patch for NIFI-1414
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/7ef8af9e Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/7ef8af9e Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/7ef8af9e Branch: refs/heads/master Commit: 7ef8af9eeadbb3a94fbc1dbcea5a7cb9704d9b63 Parents: 6af2d4a Author: Mark Payne <[email protected]> Authored: Wed Jan 20 09:14:04 2016 -0500 Committer: Mark Payne <[email protected]> Committed: Wed Jan 20 09:14:04 2016 -0500 ---------------------------------------------------------------------- .../nifi/processors/standard/TailFile.java | 29 ++++++++++---------- 1 file changed, 15 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi/blob/7ef8af9e/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TailFile.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TailFile.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TailFile.java index 659527c..b3ece4b 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TailFile.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TailFile.java @@ -629,21 +629,22 @@ public class TailFile extends AbstractProcessor { } final List<File> rolledOffFiles = new ArrayList<>(); - final DirectoryStream<Path> dirStream = Files.newDirectoryStream(directory.toPath(), rollingPattern); - for (final Path path : dirStream) { - final File file = path.toFile(); - final long lastMod = file.lastModified(); - - if (file.lastModified() < minTimestamp) { - getLogger().debug("Found rolled off file {} but its last modified timestamp is before the cutoff (Last Mod = {}, Cutoff = {}) so will not consume it", - new Object[] {file, lastMod, minTimestamp}); - - continue; - } else if (file.equals(tailFile)) { - continue; - } + try (final DirectoryStream<Path> dirStream = Files.newDirectoryStream(directory.toPath(), rollingPattern)) { + for (final Path path : dirStream) { + final File file = path.toFile(); + final long lastMod = file.lastModified(); + + if (file.lastModified() < minTimestamp) { + getLogger().debug("Found rolled off file {} but its last modified timestamp is before the cutoff (Last Mod = {}, Cutoff = {}) so will not consume it", + new Object[] {file, lastMod, minTimestamp}); + + continue; + } else if (file.equals(tailFile)) { + continue; + } - rolledOffFiles.add(file); + rolledOffFiles.add(file); + } } // Sort files based on last modified timestamp. If same timestamp, use filename as a secondary sort, as often
