[ 
https://issues.apache.org/jira/browse/CAMEL-24619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18111412#comment-18111412
 ] 

Guillaume Nodet commented on CAMEL-24619:
-----------------------------------------

This issue is being investigated by a coding agent (on behalf of gnodet).

Initial analysis confirms the bug: JmsConfiguration.java defaults consumerType 
to ConsumerType.Default unconditionally, with no topic-aware logic. The Default 
consumer uses Spring DefaultMessageListenerContainer (polling-based), which 
calls session.createConsumer() repeatedly on each poll cycle. On Artemis with a 
topic (multicast address), each createConsumer() call creates a new non-durable 
queue. These queues accumulate when Artemis is configured to restrict queue 
deletion, causing OOM on the broker.

The fix scope appears bounded: add topic-aware defaulting of consumerType, or 
emit a warning when using Default consumer type with topics.

_Note: This comment was generated by an AI coding agent and requires manual 
verification._

> camel-jms + Artemis: the default topic consumer causes an OOM on the broker.
> ----------------------------------------------------------------------------
>
>                 Key: CAMEL-24619
>                 URL: https://issues.apache.org/jira/browse/CAMEL-24619
>             Project: Camel
>          Issue Type: Bug
>          Components: came-jms
>            Reporter: Ivan Ravin
>            Assignee: Guillaume Nodet
>            Priority: Major
>
> Maybe it's known problem. The Artemis broker creates a temporary queue for 
> each topic consumer. camel-jms component can create Default and Simple 
> consumer. A simple consumer is essentially a listener, and all works fine. 
> The default consumer attempts to retrieve a message every second, and every 
> second creates temporary queue on topic address, which live until the 
> connection is terminated. This leads OOM on the broker.
> To work around this situation, you can specify in the URI 
> consumerType=Simple, but default behavior is dangerous.
> It might not be a bad idea by default to switch consumer type to Simple for 
> topic consumers?
> This is complex problem that affects camel-jms + Artemis topics + (maybe) 
> pooled connection factory



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to