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

gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 726fd8f02caf CAMEL-24040: Fix flaky tests - timing issues in seda, 
throttle, aggregation, file, and JMS tests (#24643)
726fd8f02caf is described below

commit 726fd8f02caf4168a60acda4549bb05f2010fc37
Author: Guillaume Nodet <[email protected]>
AuthorDate: Mon Jul 13 09:48:36 2026 +0200

    CAMEL-24040: Fix flaky tests - timing issues in seda, throttle, 
aggregation, file, and JMS tests (#24643)
    
    CAMEL-24040: Fix flaky tests - timing issues in seda, throttle, 
aggregation, file, and JMS tests
    
    Increase tight timeouts that cause intermittent failures on loaded CI 
systems.
    
    Co-Authored-By: Claude Opus 4.6 <[email protected]>
---
 .../component/jms/integration/JmsDeadLetterChannelInOutIT.java    | 2 +-
 .../component/jms/integration/spring/tx/JmsToJmsTransactedIT.java | 8 +++++---
 .../camel/component/file/FileConsumePollEnrichFileTest.java       | 2 +-
 .../org/apache/camel/component/seda/SedaBlockWhenFullTest.java    | 3 +--
 .../apache/camel/component/seda/SedaInOutChainedTimeoutTest.java  | 2 +-
 .../camel/impl/DefaultCamelContextSuspendResumeRouteTest.java     | 4 ++--
 .../camel/processor/aggregator/AggregateDiscardOnTimeoutTest.java | 2 +-
 .../ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest.java    | 4 ++--
 8 files changed, 14 insertions(+), 13 deletions(-)

diff --git 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/JmsDeadLetterChannelInOutIT.java
 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/JmsDeadLetterChannelInOutIT.java
index 0104779016e9..52d1b0aa3550 100644
--- 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/JmsDeadLetterChannelInOutIT.java
+++ 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/JmsDeadLetterChannelInOutIT.java
@@ -44,7 +44,7 @@ public class JmsDeadLetterChannelInOutIT extends 
AbstractPersistentJMSTest {
         assertNotNull(out);
 
         // should be in DLQ
-        Object dead = 
consumer.receiveBody("activemq:queue:JmsDeadLetterChannelInOutIT.error", 5000);
+        Object dead = 
consumer.receiveBody("activemq:queue:JmsDeadLetterChannelInOutIT.error", 10000);
         assertEquals("Hello World", dead);
     }
 
diff --git 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/spring/tx/JmsToJmsTransactedIT.java
 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/spring/tx/JmsToJmsTransactedIT.java
index a6bce9e58b77..62ad309f9a15 100644
--- 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/spring/tx/JmsToJmsTransactedIT.java
+++ 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/spring/tx/JmsToJmsTransactedIT.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.component.jms.integration.spring.tx;
 
+import java.util.concurrent.TimeUnit;
+
 import org.apache.activemq.artemis.api.core.QueueConfiguration;
 import org.apache.activemq.artemis.api.core.RoutingType;
 import org.apache.activemq.artemis.api.core.SimpleString;
@@ -94,7 +96,7 @@ public final class JmsToJmsTransactedIT extends 
CamelSpringTestSupport {
 
         template.sendBody("activemq:queue:JmsToJmsTransactedIT", "Hello 
World");
 
-        String reply = 
consumer.receiveBody("activemq:queue:JmsToJmsTransactedIT.reply", 5000, 
String.class);
+        String reply = 
consumer.receiveBody("activemq:queue:JmsToJmsTransactedIT.reply", 10000, 
String.class);
         assertEquals("Hello World", reply);
     }
 
@@ -123,7 +125,7 @@ public final class JmsToJmsTransactedIT extends 
CamelSpringTestSupport {
 
         template.sendBody("activemq:queue:JmsToJmsTransactedIT", "Hello 
World");
 
-        MockEndpoint.assertIsSatisfied(context);
+        MockEndpoint.assertIsSatisfied(context, 30, TimeUnit.SECONDS);
     }
 
     @Order(3)
@@ -151,7 +153,7 @@ public final class JmsToJmsTransactedIT extends 
CamelSpringTestSupport {
 
         template.sendBody("activemq:queue:JmsToJmsTransactedIT", "Hello 
World");
 
-        MockEndpoint.assertIsSatisfied(context);
+        MockEndpoint.assertIsSatisfied(context, 30, TimeUnit.SECONDS);
 
         // it should be moved to DLQ in JMS broker
         Object body = consumer.receiveBody("activemq:queue:" + DLQ_NAME, 
10000);
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/component/file/FileConsumePollEnrichFileTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/component/file/FileConsumePollEnrichFileTest.java
index 32714dfb9b19..0961e6cbf035 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/component/file/FileConsumePollEnrichFileTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/component/file/FileConsumePollEnrichFileTest.java
@@ -62,7 +62,7 @@ public class FileConsumePollEnrichFileTest extends 
ContextTestSupport {
                         .to("mock:start")
                         .pollEnrich(
                                 
fileUri("enrichdata?initialDelay=0&delay=10&move=.done"),
-                                1000)
+                                5000)
                         .to("mock:result");
             }
         };
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaBlockWhenFullTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaBlockWhenFullTest.java
index 8a5b85b95ce6..3ed1c4acdb5a 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaBlockWhenFullTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaBlockWhenFullTest.java
@@ -94,13 +94,12 @@ public class SedaBlockWhenFullTest extends 
ContextTestSupport {
     @Test
     public void testAsyncSedaBlockingWhenFull() throws Exception {
         getMockEndpoint(MOCK_URI).setExpectedMessageCount(QUEUE_SIZE + 1);
-        getMockEndpoint(MOCK_URI).setResultWaitTime(DELAY_LONG * 3);
 
         SedaEndpoint seda = context.getEndpoint(BLOCK_WHEN_FULL_URI, 
SedaEndpoint.class);
         assertEquals(QUEUE_SIZE, seda.getQueue().remainingCapacity());
 
         asyncSendTwoOverCapacity(BLOCK_WHEN_FULL_URI, QUEUE_SIZE + 4);
-        assertMockEndpointsSatisfied(5, TimeUnit.SECONDS);
+        MockEndpoint.assertIsSatisfied(context, 30, TimeUnit.SECONDS);
     }
 
     /**
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaInOutChainedTimeoutTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaInOutChainedTimeoutTest.java
index c5e771d33537..e29695457f36 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaInOutChainedTimeoutTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/component/seda/SedaInOutChainedTimeoutTest.java
@@ -41,7 +41,7 @@ public class SedaInOutChainedTimeoutTest extends 
ContextTestSupport {
 
         long delta = watch.taken();
 
-        assertTrue(delta < 4000, "Should be faster than 4000 millis, was: " + 
delta);
+        assertTrue(delta < 8000, "Should be faster than 8000 millis, was: " + 
delta);
     }
 
     @Override
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/impl/DefaultCamelContextSuspendResumeRouteTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/impl/DefaultCamelContextSuspendResumeRouteTest.java
index 9824e071707e..0e6b5ac876fa 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/impl/DefaultCamelContextSuspendResumeRouteTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/impl/DefaultCamelContextSuspendResumeRouteTest.java
@@ -39,7 +39,7 @@ public class DefaultCamelContextSuspendResumeRouteTest 
extends ContextTestSuppor
 
         template.sendBody("seda:foo", "A");
 
-        assertMockEndpointsSatisfied();
+        MockEndpoint.assertIsSatisfied(context, 30, TimeUnit.SECONDS);
 
         log.info("Suspending");
 
@@ -57,7 +57,7 @@ public class DefaultCamelContextSuspendResumeRouteTest 
extends ContextTestSuppor
                 .atMost(5, TimeUnit.SECONDS)
                 .untilAsserted(() -> Assertions.assertDoesNotThrow(() -> 
template.sendBody("seda:foo", "B")));
 
-        mock.assertIsSatisfied(1000);
+        mock.assertIsSatisfied(5000);
 
         assertTrue(context.isSuspended());
         assertFalse(context.getStatus().isStarted());
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateDiscardOnTimeoutTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateDiscardOnTimeoutTest.java
index 4719ab180a58..cdac4a7dccba 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateDiscardOnTimeoutTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateDiscardOnTimeoutTest.java
@@ -49,7 +49,7 @@ public class AggregateDiscardOnTimeoutTest extends 
ContextTestSupport {
         template.sendBodyAndHeader("direct:start", "E", "id", 456);
 
         // should complete before timeout
-        assertTrue(mock.await(1000, TimeUnit.MILLISECONDS));
+        assertTrue(mock.await(5000, TimeUnit.MILLISECONDS));
     }
 
     @Override
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/processor/throttle/ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/processor/throttle/ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest.java
index 5be97bf11be1..352b4537f801 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/processor/throttle/ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/processor/throttle/ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest.java
@@ -75,7 +75,7 @@ public class 
ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest extends Conte
         final ServiceSupport consumer = (ServiceSupport) 
context.getRoute("foo").getConsumer();
 
         // wait long enough to have the consumer suspended
-        await().atMost(5, TimeUnit.SECONDS).until(consumer::isSuspended);
+        await().atMost(10, TimeUnit.SECONDS).until(consumer::isSuspended);
 
         // send more messages
         // but should get there (yet)
@@ -94,7 +94,7 @@ public class 
ThrottlingExceptionRoutePolicyHalfOpenHandlerSedaTest extends Conte
         result.expectedBodiesReceivedInAnyOrder(bodies);
 
         // wait long enough to have the consumer resumed
-        await().atMost(5, TimeUnit.SECONDS).until(consumer::isStarted);
+        await().atMost(10, TimeUnit.SECONDS).until(consumer::isStarted);
 
         // send message
         // should get through

Reply via email to