activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bastian Preindl <bastian.prei...@joinvision.com>
Subject Network of 3 brokers, durable consumer problem
Date Sat, 28 Feb 2009 13:40:33 GMT

Hi

I'm extending my network brokers from two (forwarding bridge A->B) to three
and I've established the following connections via forwarding bridges:

A->B
A->C
B->C

whereas C is new in the network of brokers. Now I've one topic where I'd
like B and C to be a durable subscriber with different message selectors.

The problem is that even though the durable subscribers of B and C have
different names, I get the following error on A when the second durable
subscriber connects to whether broker B or C:

ERROR Service                        - Async error occurred:
javax.jms.JMSException: Durable consumer is in use for client:
NC_localhost_inboundlocalhost and subscriptionName: localhost_offers
javax.jms.JMSException: Durable consumer is in use for client:
NC_localhost_inboundlocalhost and subscriptionName: localhost_offers
	at
org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:75)
	at
org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:375)

..... and so on


My configuration is (shortened):

A: 

<transportConnector uri="tcp://localhost:61616"/>
...
<networkConnector
uri="static:(tcp://localhost:61617,tcp://localhost:61618)"/>

B:

<transportConnector uri="tcp://localhost:61617"/>
...
<networkConnector uri="static:(tcp://localhost:61618)"/>

C:

<transportConnector uri="tcp://localhost:61618"/>
...
(no network connectors)


The producer code (connecting to A) is:

Topic topic = session.createTopic("offers");
producer = session.createProducer(topic);

The first consumer code (connecting to B) is:

consumer = session.createDurableSubscriber(topic, "B","some message
selection rule", false);

The second consumer code (connecting to C) is:

consumer = session.createDurableSubscriber(topic, "C","some other message
selection rule", false);


I'd like to remain the reliablity of the old A->B solution based on
topic/durable subscriber also with the third broker added. The both
connections which probably end up to be cyclic (are those network connectors
one-way?) are intended to keep up a connection between A and C even if B is
down.

I'd be very glad if somebody could point me to the thinking/configuration
error I obviously have or to a resource dealing with the setup of a network
of three brokers.

Thank you very much in advance

Bastian
-- 
View this message in context: http://www.nabble.com/Network-of-3-brokers%2C-durable-consumer-problem-tp22262226p22262226.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message