This is an automated email from the ASF dual-hosted git repository. apupier pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
commit 0a80149db2342a340cf3319307098885a0660cb7 Author: Aurélien Pupier <[email protected]> AuthorDate: Wed Mar 11 14:02:04 2026 +0100 Avoid potential infinite loop in KafkaTransactionIT test it avoids being stuck with this: ``` Name: main State: RUNNABLE Total blocked: 3,067 Total waited: 327 Stack trace: [email protected]/sun.nio.ch.EPoll.wait(Native Method) [email protected]/sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:121) [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:130) - locked sun.nio.ch.Util$2@252e9b93 - locked sun.nio.ch.EPollSelectorImpl@437d752a [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:142) app//org.apache.kafka.common.network.Selector.select(Selector.java:880) app//org.apache.kafka.common.network.Selector.poll(Selector.java:470) app//org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:645) app//org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:282) app//org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:253) app//org.apache.kafka.clients.consumer.internals.ClassicKafkaConsumer.pollForFetches(ClassicKafkaConsumer.java:714) app//org.apache.kafka.clients.consumer.internals.ClassicKafkaConsumer.poll(ClassicKafkaConsumer.java:645) app//org.apache.kafka.clients.consumer.internals.ClassicKafkaConsumer.poll(ClassicKafkaConsumer.java:624) app//org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:899) app//org.apache.camel.component.kafka.integration.KafkaTransactionIT.createKafkaMessageConsumer(KafkaTransactionIT.java:199) ``` currently happening when using strimzi container image. The test is still failing but at least not blocking the whole test suite. Signed-off-by: Aurélien Pupier <[email protected]> --- .../camel/component/kafka/integration/KafkaTransactionIT.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/integration/KafkaTransactionIT.java b/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/integration/KafkaTransactionIT.java index 01128c35678a..9eb885290059 100644 --- a/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/integration/KafkaTransactionIT.java +++ b/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/integration/KafkaTransactionIT.java @@ -190,12 +190,14 @@ public class KafkaTransactionIT extends BaseKafkaTestSupport { } private void createKafkaMessageConsumer( - KafkaConsumer<String, String> consumerConn, String topic, CountDownLatch messagesLatch) { + KafkaConsumer<String, String> consumerConn, String topic, CountDownLatch messagesLatch) + throws InterruptedException { consumerConn.subscribe(Arrays.asList(topic)); boolean run = true; + int numberOfAttempts = 0; - while (run) { + while (run && numberOfAttempts < 100) { ConsumerRecords<String, String> records = consumerConn.poll(Duration.ofMillis(100)); for (int i = 0; i < records.count(); i++) { messagesLatch.countDown(); @@ -203,6 +205,8 @@ public class KafkaTransactionIT extends BaseKafkaTestSupport { run = false; } } + numberOfAttempts++; + Thread.sleep(100); } }
