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 <[email protected]>
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());
                     }
                 }
             }

Reply via email to