This is an automated email from the ASF dual-hosted git repository.

clebertsuconic pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


The following commit(s) were added to refs/heads/main by this push:
     new f260c40e78 ARTEMIS-5173 Improve reliability of ReplicaTXCheckTest
f260c40e78 is described below

commit f260c40e78f632b1327abb6167d92edabc920497
Author: Clebert Suconic <[email protected]>
AuthorDate: Thu Nov 21 15:24:09 2024 -0500

    ARTEMIS-5173 Improve reliability of ReplicaTXCheckTest
---
 .../soak/replicaTxCheck/ReplicaTXCheckTest.java    | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git 
a/tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/replicaTxCheck/ReplicaTXCheckTest.java
 
b/tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/replicaTxCheck/ReplicaTXCheckTest.java
index 4fb7092391..5bdeeccb61 100644
--- 
a/tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/replicaTxCheck/ReplicaTXCheckTest.java
+++ 
b/tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/replicaTxCheck/ReplicaTXCheckTest.java
@@ -27,6 +27,7 @@ import javax.jms.Queue;
 import javax.jms.Session;
 import javax.jms.TextMessage;
 import javax.jms.Topic;
+import javax.jms.TransactionRolledBackException;
 import java.io.File;
 import java.lang.invoke.MethodHandles;
 import java.util.HashSet;
@@ -230,16 +231,23 @@ public class ReplicaTXCheckTest  extends SoakTestBase {
 
          HashSet<Integer> received = new HashSet<>();
          int rec = 0;
-         while (true) {
-            TextMessage message = (TextMessage) subscription.receive(100);
-            if (message == null) {
-               logger.info("Received {} messages", rec);
+         for (long timeout = System.currentTimeMillis() + 60_000; 
System.currentTimeMillis() < timeout;) {
+            rec = 0;
+            while (true) {
+               TextMessage message = (TextMessage) subscription.receive(100);
+               if (message == null) {
+                  logger.info("Received {} messages", rec);
+                  break;
+               }
+               received.add(message.getIntProperty("i"));
+               rec++;
+            }
+            try {
+               targetSession.commit();
                break;
+            } catch (TransactionRolledBackException ok) {
             }
-            received.add(message.getIntProperty("i"));
-            rec++;
          }
-         targetSession.commit();
 
          for (i = 0; i < NUMBER_OF_MESSAGES; i++) {
             assertTrue(received.contains(i));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to