Guillaume Nodet created CAMEL-23437:
---------------------------------------
Summary: Fix and re-enable flaky
DisruptorReconfigureWithBlockingProducerTest
Key: CAMEL-23437
URL: https://issues.apache.org/jira/browse/CAMEL-23437
Project: Camel
Issue Type: Improvement
Components: camel-disruptor
Reporter: Guillaume Nodet
Fix For: 4.21.0
The DisruptorReconfigureWithBlockingProducerTest has been @Disabled since 2019
(CAMEL-13629) due to flakiness.
Root causes:
# Fragile wall-clock timing assertion (watch.taken() < 2000) with only 400ms
margin over the theoretical 1600ms drain time
# Race between producer and reconfiguration: the ConsumerEventHandler processes
events asynchronously, so the ring buffer drains in microseconds and the
producer sends all messages to the old disruptor before reconfiguration takes
effect
# Non-volatile exception field across threads and tight 5-second timeouts
Fix uses explicit CountDownLatch synchronization so the second batch of
messages deterministically goes through both consumers after reconfiguration.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)