From eecbbb101803c098cc6479f4105dcb8647328a01 Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Fri, 22 Dec 2017 14:05:42 +0000 Subject: [PATCH] Improved bug fix refs #10677 git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/data-publishing/document-store-lib@161868 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../gcube/documentstore/persistence/FallbackMonitor.java | 2 -- .../persistence/FallbackPersistenceBackend.java | 6 +++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/gcube/documentstore/persistence/FallbackMonitor.java b/src/main/java/org/gcube/documentstore/persistence/FallbackMonitor.java index 25a95a0..f67c0c8 100644 --- a/src/main/java/org/gcube/documentstore/persistence/FallbackMonitor.java +++ b/src/main/java/org/gcube/documentstore/persistence/FallbackMonitor.java @@ -101,9 +101,7 @@ public class FallbackMonitor implements Runnable { Long timestamp = Calendar.getInstance().getTimeInMillis(); File elaborationFile = fallbackPersistenceBackend.moveFallbackFile(ELABORATION_FILE_SUFFIX + "." + timestamp.toString()); - elaborateFallbackFile(elaborationFile); - } @Override diff --git a/src/main/java/org/gcube/documentstore/persistence/FallbackPersistenceBackend.java b/src/main/java/org/gcube/documentstore/persistence/FallbackPersistenceBackend.java index ba622b6..6435fda 100644 --- a/src/main/java/org/gcube/documentstore/persistence/FallbackPersistenceBackend.java +++ b/src/main/java/org/gcube/documentstore/persistence/FallbackPersistenceBackend.java @@ -52,12 +52,16 @@ public class FallbackPersistenceBackend extends PersistenceBackend { /** * Move the fallbackFile to a new file with the same name by appending a suffix * @param suffix - * @return the move file + * @return the moved file if any, null otherwise */ protected File moveFallbackFile(String suffix) { synchronized(fallbackFile) { try { Path source = fallbackFile.toPath(); + if(!fallbackFile.exists()) { + logger.trace("No fallback file {} found. Nothing to recover", source.toAbsolutePath().toString()); + return null; + } Path target = source.resolveSibling(fallbackFile.getName()+suffix); logger.trace("Going to move fallback file {} to {}", source.toAbsolutePath().toString(), target.toAbsolutePath().toString()); target = Files.move(source, source.resolveSibling(fallbackFile.getName()+suffix), StandardCopyOption.ATOMIC_MOVE);