diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/entity/progress/VerifyProgress.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/entity/progress/VerifyProgress.java index f80024eb283eaa9c7413f8594f0a96d0032134d4..058b5254cd49de935af1f29070fde09da4206695 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/entity/progress/VerifyProgress.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/helper/entity/progress/VerifyProgress.java @@ -23,12 +23,13 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentityHolder; */ public class VerifyProgress extends EntityProgress { - + public static final String VERIFYING = "verifying"; + private static final long serialVersionUID = 1L; public VerifyProgress(IIdentityHolder entity, int numItemsProcessed, int totalItemsToProcess) { - super("verifying", entity, numItemsProcessed, totalItemsToProcess); + super(VERIFYING, entity, numItemsProcessed, totalItemsToProcess); } } diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadDataSetOptimisticLockingTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadDataSetOptimisticLockingTest.java index a2815e16f743c423940c11dddc627b6c53cf1509..e78e3a10623ac99f9ea4dd65c4110775cb6b1ab9 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadDataSetOptimisticLockingTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadDataSetOptimisticLockingTest.java @@ -24,6 +24,7 @@ import java.util.Arrays; import org.apache.log4j.Logger; import org.testng.annotations.Test; +import ch.ethz.sis.openbis.generic.server.asapi.v3.helper.entity.progress.VerifyProgress; import ch.systemsx.cisd.common.concurrent.MessageChannel; import ch.systemsx.cisd.common.concurrent.MessageChannelBuilder; import ch.systemsx.cisd.common.logging.LogCategory; @@ -71,7 +72,7 @@ public class MultiThreadDataSetOptimisticLockingTest extends MultiThreadOptimist { logger.info(phaseName + " " + numItemsProcessed + "/" + totalItemsToProcess); - if (phaseName.equals(CREATING_ENTITIES) && numItemsProcessed == 2 + if (phaseName.equals(VerifyProgress.VERIFYING) && numItemsProcessed == 2 && totalItemsToProcess == 2) { messageChannelMain.send(ToolBox.FIRST_REGISTERED); diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadExperimentOptimisticLockingTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadExperimentOptimisticLockingTest.java index da881be2e198f86cf38eac91e7ba4871e2fad5fc..f543a076f8075ada06174d3989319999372bb797 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadExperimentOptimisticLockingTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadExperimentOptimisticLockingTest.java @@ -25,6 +25,7 @@ import java.util.List; import org.apache.log4j.Logger; import org.testng.annotations.Test; +import ch.ethz.sis.openbis.generic.server.asapi.v3.helper.entity.progress.VerifyProgress; import ch.systemsx.cisd.common.concurrent.MessageChannel; import ch.systemsx.cisd.common.concurrent.MessageChannelBuilder; import ch.systemsx.cisd.common.logging.LogCategory; @@ -132,7 +133,7 @@ public class MultiThreadExperimentOptimisticLockingTest extends public void handleProgress(String phaseName, int totalItemsToProcess, int numItemsProcessed) { - if (phaseName.equals(CREATING_ENTITIES) && numItemsProcessed == 2 + if (phaseName.equals(VerifyProgress.VERIFYING) && numItemsProcessed == 2 && totalItemsToProcess == 2) { messageChannelMain.send(ToolBox.FIRST_REGISTERED); diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadSampleOptimisticLockingTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadSampleOptimisticLockingTest.java index 774fb1c6ecf01122313be53c25258ac1df8f5a31..2765e6a03ffa8ceb8f8b3bd15afa664542bd3a4b 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadSampleOptimisticLockingTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/optimistic_locking/MultiThreadSampleOptimisticLockingTest.java @@ -24,6 +24,7 @@ import java.util.List; import org.apache.log4j.Logger; import org.testng.annotations.Test; +import ch.ethz.sis.openbis.generic.server.asapi.v3.helper.entity.progress.VerifyProgress; import ch.systemsx.cisd.common.concurrent.MessageChannel; import ch.systemsx.cisd.common.concurrent.MessageChannelBuilder; import ch.systemsx.cisd.common.logging.LogCategory; @@ -32,10 +33,10 @@ import ch.systemsx.cisd.openbis.common.conversation.context.ServiceConversations import ch.systemsx.cisd.openbis.common.conversation.progress.IServiceConversationProgressListener; import ch.systemsx.cisd.openbis.generic.server.util.TimeIntervalChecker; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.AbstractExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Deletion; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DeletionType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.AbstractExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSample; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample; @@ -163,10 +164,6 @@ public class MultiThreadSampleOptimisticLockingTest extends MultiThreadOptimisti } - /** - * This test is flaky. If the transaction of performEntityOperations() call in the new thread ends before the transaction of - * performEntityOperations() call in the main thread, the modifier of the sample will be "optimist" and the test fails. - */ @Test public void testRegisterDataSetsForSameSampleInTwoThreads() { @@ -185,7 +182,7 @@ public class MultiThreadSampleOptimisticLockingTest extends MultiThreadOptimisti public void handleProgress(String phaseName, int totalItemsToProcess, int numItemsProcessed) { - if (phaseName.equals(CREATING_ENTITIES) && numItemsProcessed == 2 + if (phaseName.equals(VerifyProgress.VERIFYING) && numItemsProcessed == 2 && totalItemsToProcess == 2) { messageChannelMain.send(ToolBox.FIRST_REGISTERED);