Claus Ibsen created CAMEL-23692:
-----------------------------------
Summary: BacklogTracer drops late-arriving trace events from async
multicast branches
Key: CAMEL-23692
URL: https://issues.apache.org/jira/browse/CAMEL-23692
Project: Camel
Issue Type: Bug
Components: camel-core
Reporter: Claus Ibsen
When a multicast sends to multiple async endpoints (e.g. Kafka, SEDA, or Stub),
the second branch may fire its trace events after a new exchange has already
claimed the provisional history queue. These late events are silently dropped
because they match neither the new exchange nor the append-mode conditions.
This causes the message history (used by the TUI History tab and other tooling)
to be incomplete — downstream routes connected via async endpoints may not
appear in the trace.
Reproduction:
- Route A multicasts to seda:fast and seda:slow
- seda:slow has a delay
- Send two messages in quick succession
- The second message claims provisionalHistoryQueue before seda:slow finishes
processing the first message
- seda:slow events from the first message are dropped
Fix: Add a fallback clause in BacklogTracer.traceEvent() that appends events
matching lastCompletedBreadcrumbId directly to completeHistoryQueue when both
match and appendMode are false.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)