I'm using the latest version of ActiveMQ 5.0.0 and I'm having a bit of
trouble creating a network of brokers with topics predefined.  After
bringing the brokers up and down a few times, I'll get the following errors: 

INFO  DemandForwardingBridge         - Network connection between
vm://activemq2#0 and tcp://activemq1/192.168.2.129:61616(activemq1) has been
established.
ERROR Service                        - Async error occurred:
javax.jms.JMSException: Durable consumer is in use for client:
NC_activemq1_inboundactivemq2 and subscriptionName: activemq2_fof
javax.jms.JMSException: Durable consumer is in use for client:
NC_activemq1_inboundactivemq2 and subscriptionName: activemq2_fof
        at
org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:75)
        at
org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:338)
        at
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:85)
        at
org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:80)
        at
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:85)
        at
org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:95)
        at
org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:525)
        at
org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:334)
        at
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:281)
        at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:178)
        at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:100)
        at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
        at
org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:202)
        at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
        at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
INFO  DemandForwardingBridge         - Network connection between
vm://activemq2#0 and tcp://activemq1/192.168.2.129:61616 shutdown due to a
local error: javax.jms.JMSException: Durable consumer is in use for client:
NC_activemq1_inboundactivemq2 and subscriptionName: activemq2_fof
INFO  TransportConnector             - Connector vm://activemq2 Stopped
INFO  DemandForwardingBridge         - activemq2 bridge to activemq1 stopped

My two servers are activemq1 and activemq2.  The queue is specified in the
activemq.xml using:
<destinations>
        <topic physicalName="fof" />
</destinations>

Through debugging, I tracked this down to a race condition between the
listening port (61616) and the created port (incremental) creating the
connection.  In the one case, it creates a durable topic, in the other it
doesn't (I can't remember which is which).  Regardless, when the connection
fails (or is shutdown) the durable topic isn't stopped, and thus the
reconnection fails.  I can't really make a test case for this because I"m
not sure which behavior is right, and I'm not even sure where I'd start.

Can anyone else verify this is an issue?  Can anyone recommend a fix?

-- 
View this message in context: 
http://www.nabble.com/Mutlicast-discovery-with-persistent-topics-leads-to-errors-tp14744672s2354p14744672.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to