According to this issue which was resolved in Camel 2.10, a Camel AddRoute may block when using AMQ failover and one broker is down.
My Camel route hangs although my distributed brokers are all active.
I'm using Fuse Camel 2.8.0.
- The route consumes from a durable JMS topic
- It works perfectly when the brokerURL uses a single broker,
- The route hangs on startup when the brokerURL contains "failover://(ssl://node:port,ssl:node:port)"
I've independently confirmed distributed broker connectivity using the Fuse mq-client sample app
When a timeout setting is used in the failover brokerURL, the route will start, but throws an exception (which I have not yet attempted to handle), and the route is not added.
- A Java stack trace showed the app was blocking in AMQ's Failover.java.
- The problem went away when ssl was replaced with tcp
- Upgrading to Camel 2.11.0 had no effect
Upgrading to ActiveMQ 5.8.0 made the problem go away.