I am producing to an ActiveMQ instance with a Camel ActiveMQ component:
<camel:log message="YMA_IN" />
<camel:inOnly uri="activemqBroker:queue:queue.test" id="activemqBrokerTestQueue"/>
<camel:log message="YMA_OUT" />
The only jms configuration on the endpoint is TTL and a pooled connection factory.
<amq:connectionFactory id="jmsConnectionFactory" brokerURL="${config.jms.broker.url}" />
<bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory" init-method="start" destroy-method="stop">
<property name="maxConnections" value="15" />
<property name="connectionFactory" ref="jmsConnectionFactory" />
</bean>
<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
<property name="connectionFactory" ref="pooledConnectionFactory"/>
<property name="timeToLive" value="${config.jms.time.to.live}" />
</bean>
<!-- Broker configuration -->
<bean id="activemqBroker" class="org.apache.activemq.camel.component.ActiveMQComponent">
<property name="configuration" ref="jmsConfig"/>
</bean>
If the broker is down, exchanges remain stuck on the inonly (logging IN but not OUT), seemingly indefinitely until the broker is back up. No exception, no timeout etc...
Is this the expected behaviour if the broker is down? I was expecting an exception? Is there some configuration I am missing?
Camel 2.10.1