diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ETLService.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ETLService.java
index 1713b8e9667f4f1397a83a4aefd45e45f46d91c4..c8948caff9e4f365e0a035531daaf47da611e86a 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ETLService.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ETLService.java
@@ -1748,9 +1748,13 @@ public class ETLService extends AbstractCommonServer<IETLLIMSService> implements
 
         final IDataBO dataBO = businessObjectFactory.createDataBO(session);
 
-        dataBO.loadByCode(dataSetCode);
-        dataBO.setStorageConfirmed();
-        daoFactory.getPostRegistrationDAO().addDataSet(dataBO.getData());
+        if (false == dataBO.isStorageConfirmed())
+        {
+            dataBO.loadByCode(dataSetCode);
+
+            dataBO.setStorageConfirmed();
+            daoFactory.getPostRegistrationDAO().addDataSet(dataBO.getData());
+        }
     }
 
     @Override
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataBO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataBO.java
index 75b76c3a155bae0c07292e7d199670a645dfec76..959b4731c2b9a0f92ed8cf71bca06e8af07e49bf 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataBO.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataBO.java
@@ -691,4 +691,15 @@ public class DataBO extends AbstractDataSetBusinessObject implements IDataBO
             externalData.setStorageConfirmation(true);
         }
     }
+
+    @Override
+    public boolean isStorageConfirmed()
+    {
+        ExternalDataPE externalData = data.tryAsExternalData();
+        if (null != externalData)
+        {
+            return externalData.isStorageConfirmation();
+        }
+        return true;
+    }
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/IDataBO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/IDataBO.java
index 88b133814025034a31a5b1b25f21ad95d5268828..acd909a81f965afcf024cc57dcba9671bc854251 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/IDataBO.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/IDataBO.java
@@ -130,10 +130,12 @@ public interface IDataBO extends IEntityBusinessObject
 
     /**
      * Indicate that the storage of the external data has been confirmed.
-     * 
-     * @throws UserFailureException
-     *             if the this is not external data
      */
     public void setStorageConfirmed();
 
+    /**
+     * @return true if the storage of this dataset has been confirmed or this is not external data
+     */
+    public boolean isStorageConfirmed();
+
 }