diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractSampleIdentifierBusinessObject.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractSampleIdentifierBusinessObject.java
index 5a827f227c9ccbc1abf9274803a649c933f52e78..3b3dadde618047f5c909bd946911d06aa7b49e55 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractSampleIdentifierBusinessObject.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractSampleIdentifierBusinessObject.java
@@ -88,6 +88,11 @@ abstract class AbstractSampleIdentifierBusinessObject extends AbstractBusinessOb
         }
         return sample;
     }
+    
+    public void clearSampleCache()
+    {
+        sampleByIdentifierCache.clear();
+    }
 
     protected SamplePE tryToGetSampleByIdentifier(final SampleIdentifier sampleIdentifier)
     {
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
index ee90b77299d22450239763056f80aba43c6dcf01..881c0a6dc24e2fc96287eb0cb0279d6c007cf7bc 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
@@ -1026,6 +1026,7 @@ public final class DataSetTable extends AbstractDataSetBusinessObject implements
         }
         dataChanged = false;
         operationLog.info("State of data sets saved.");
+        clearSampleCache();
     }
 
     private void checkMandatoryProperties()