diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ServiceForDataStoreServer.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ServiceForDataStoreServer.java
index 12e3912be8c1ea04958658b95bd085a090952e0f..a02d54d59cefbdaf606cef35336f2a35293f42c7 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ServiceForDataStoreServer.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/ServiceForDataStoreServer.java
@@ -1051,7 +1051,10 @@ public class ServiceForDataStoreServer extends AbstractCommonServer<IServiceForD
         {
             //Check if the dataset is on the trashcan
             TechId dataSetTechId = getDAOFactory().getDataDAO().tryToFindDataSetIdByCode(dataSetCode);
-            List<String> queryDatasetOnTrashCan = getDAOFactory().getDeletionDAO().findTrashedDataSetCodes(Arrays.asList(dataSetTechId));
+            List<String> queryDatasetOnTrashCan = null;
+            if(dataSetTechId != null) {
+                queryDatasetOnTrashCan = getDAOFactory().getDeletionDAO().findTrashedDataSetCodes(Arrays.asList(dataSetTechId));
+            }
             boolean isDataSetOnTrashCan = queryDatasetOnTrashCan != null && queryDatasetOnTrashCan.size() == 1;
             //Check if the dataset is finally deleted
             boolean isDataSetDeleted = getDAOFactory().getEventDAO().tryFind(