views:

352

answers:

1

Hi all,

I'm encountering some problem with ActiveMQ 5.3. We have the following setup: - A master-slave pair ('master' and 'slave') - A broker ('broker') that forwards messages to either 'master' or 'slave', depending on who is active

The symptom I see: When I start 'master', 'slave' and 'broker' messaging works as expected: When I publish messages to 'broker' it passes it to 'master' and the messages are received by my client that is connected there. Now, when I stop 'master', 'slave' detects this and becomes active. 'broker' also noticed that it lost its connection to 'master' and fails over to 'slave'. It reports that it has connected in its local log, however, 'slave' does not report anything about that. 'broker' now reports warnings such as

2009-11-12 22:34:40,915 [/cs-droid002#18] WARN DemandForwardingBridge - Unexpected local command: ConnectionInfo {commandId = 2, responseRequired = false, connectionId = ID:broker-39053-1258061649602-12:1, clientId = NC_slave_inbound_broker, userName = null, password = null, brokerPath = null, brokerMasterConnector = false, manageable = false, clientMaster = true}

When I publish messages to broker now they are lost immediately. No consumer connected to either slave or broker receives them. When I publish them directly to 'slave' my consumer there does receives them.

Important to note perhaps is that 'broker' is configured with a url 'static:(failover:(tcp://master,tcp://slave))' and that our producer and consumer are speaking STOMP (so we have added a transportConnector for the stomp protocol)

Does anyone has the solution? I'm about to give up :|

A: 

I'm confused with your use of the term broker. You mention a master and a slave and that makes sense because those are the master broker and the slave broker. But to what are you referring in the following sentences?:

  • When I publish messages to broker now they are lost immediately.

What is the broker here? is it the master broker or the slave broker?

  • Important to note perhaps is that 'broker' is configured with a url 'static:(failover:(tcp://master,tcp://slave))' and that our producer and consumer are speaking STOMP...

I'm not clear on what the broker is here either. You mention the master broker and slave broker in the URL, but I'm confused again. What is the broker?

Bruce

bsnyder
It is neither the master, nor the slave. We have a third broker that is configured as store-and-forward only. This broker should forward its messages to the master, or the slave if the master has died.
schuilr