From 8b0128adb45cd1856d26fda941a8ac3721fb6465 Mon Sep 17 00:00:00 2001
From: felmer <felmer>
Date: Thu, 13 Apr 2017 06:02:45 +0000
Subject: [PATCH] SSDM-4988: Clearing sample cache at the end of
 DataSetTable.save method in order to reload samples and experiments in the
 next batch.

SVN: 38050
---
 .../business/bo/AbstractSampleIdentifierBusinessObject.java  | 5 +++++
 .../openbis/generic/server/business/bo/DataSetTable.java     | 1 +
 2 files changed, 6 insertions(+)

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 5a827f227c9..3b3dadde618 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 ee90b77299d..881c0a6dc24 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()
-- 
GitLab