diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java
index 5178f75960b1174b3f1d4c4256dbfcfd40dcf08e..d3bfa4e9646e82544360e407581931b6c46142af 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java
@@ -290,22 +290,15 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im
 
             File imagesInStoreFolder = moveToStore(incomingDataSetDirectory, rootDirectory);
             this.storedDataDirectory = rootDirectory;
-            try
-            {
-                // NOTE: plateImages will be changed by reference
-                processImages(rootDirectory, plateImages, imagesInStoreFolder,
-                        imageStorageConfiguraton);
+            // NOTE: plateImages will be changed by reference
+            processImages(rootDirectory, plateImages, imagesInStoreFolder, imageStorageConfiguraton);
 
-                shouldDeleteOriginalDataOnCommit =
-                        imageStorageConfiguraton.getOriginalDataStorageFormat().isHdf5();
+            shouldDeleteOriginalDataOnCommit =
+                    imageStorageConfiguraton.getOriginalDataStorageFormat().isHdf5();
+
+            dbTransaction = createQuery();
+            storeInDatabase(dbTransaction, dataSetInformation, extractionResult);
 
-                dbTransaction = createQuery();
-                storeInDatabase(dbTransaction, dataSetInformation, extractionResult);
-            } catch (RuntimeException ex)
-            {
-                moveFilesBackFromStore();
-                throw ex;
-            }
             return rootDirectory;
         }
 
@@ -373,6 +366,11 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im
 
         private final void moveFilesBackFromStore()
         {
+            if (storedDataDirectory == null)
+            {
+                // nothing has been stored yet
+                return;
+            }
             checkParameters(incomingDataSetDirectory, storedDataDirectory);
 
             final File originalDataFile = tryGetProprietaryData();