[
https://issues.apache.org/jira/browse/CAMEL-23437?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guillaume Nodet reassigned CAMEL-23437:
---------------------------------------
Assignee: Guillaume Nodet
> 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
> Assignee: Guillaume Nodet
> Priority: Major
> 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)