You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2022/09/19 04:39:59 UTC

[sling-org-apache-sling-distribution-core] branch master updated: SLING-11587: SimpleDistributionQueueProvider fails to close checkpoint file

This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-core.git


The following commit(s) were added to refs/heads/master by this push:
     new 95db95d1 SLING-11587: SimpleDistributionQueueProvider fails to close checkpoint file
     new 63ede760 Merge pull request #65 from reschke/SLING-11587
95db95d1 is described below

commit 95db95d1d0681e484bcd113555f327b8da6f6159
Author: Julian Reschke <ju...@gmx.de>
AuthorDate: Sat Sep 17 08:44:05 2022 +0100

    SLING-11587: SimpleDistributionQueueProvider fails to close checkpoint file
---
 .../queue/impl/simple/SimpleDistributionQueueProvider.java         | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueueProvider.java b/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueueProvider.java
index 9315ee09..286b975c 100644
--- a/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueueProvider.java
+++ b/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueueProvider.java
@@ -24,6 +24,7 @@ import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
 import java.io.FilenameFilter;
+import java.io.IOException;
 import java.util.Collection;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
@@ -125,8 +126,8 @@ public class SimpleDistributionQueueProvider implements DistributionQueueProvide
                 };
                 for (File qf : checkpointDirectory.listFiles(filenameFilter)) {
                     log.info("recovering from checkpoint {}", qf);
-                    try {
-                        LineIterator lineIterator = IOUtils.lineIterator(new FileReader(qf));
+                    try (FileReader fr = new FileReader(qf)) {
+                        LineIterator lineIterator = IOUtils.lineIterator(fr);
                         while (lineIterator.hasNext()) {
                             String line = lineIterator.nextLine();
                             DistributionQueueItem item = mapper.readQueueItem(line);
@@ -137,6 +138,8 @@ public class SimpleDistributionQueueProvider implements DistributionQueueProvide
                         log.warn("could not read checkpoint file {}", qf.getAbsolutePath());
                     } catch (JsonException e) {
                         log.warn("could not parse info from checkpoint file {}", qf.getAbsolutePath());
+                    } catch (IOException e) {
+                        log.warn("IO error on checkpoint file {}", qf.getAbsolutePath());
                     }
                 }
             }