You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "Claude Montpetit [Trilliant]" <cl...@trilliantnetworks.com> on 2006/04/07 21:33:19 UTC

Restarting the broker that has Durable subscriptions

Hi,

I have an activemq 4 (snapshot march 23rd). I am launching a durable 
topic consumer in Spring using lingo. The first time I run the client on 
the active broker, all works just fine. I shutdown both processes (the 
broker and the consumer), and I restart them both. Then, I get an 
exception in both that says that the durable subscription is already active.

1- Is this a normal behavior? Is it a bug?

2- How can I  "reset" activemq? Where does it persist this state 
information by default? I want to run a clean activemq.

Here is my config
:
  <bean id="someService" 
class="org.logicblaze.lingo.jms.JmsServiceExporter">
    <property name="service" ref="someServiceImpl"/>
    <property name="serviceInterface" value="com.someCompany.SomeService"/>
    <property name="connectionFactory" ref="jmsFactory"/>
    <property name="destination" ref="someServiceTopic"/>
    <property name="invocationFactory" ref="invocationFactory"/>     
    <property name="clientID" value="someService-consumer1"/>
    <property name="subscriberName" value="someService-consumer1"/>
  </bean>

And the exception:
Exception in thread "main" 
org.springframework.beans.factory.BeanCreationException:
  Error creating bean with name 'someService' defined in
  class path resource [com/someCompany/server-applicationContext.xml]:
Invocation of init method failed; nested exception is 
javax.jms.JMSException:
  That durable subscription is already active.
javax.jms.JMSException: That durable subscription is already active.
        at 
org.apache.activemq.broker.region.TopicRegion.createSubscription(Topi
cRegion.java:205)
        at 
org.apache.activemq.broker.jmx.ManagedTopicRegion.createSubscription(
ManagedTopicRegion.java:44)
        at 
org.apache.activemq.broker.region.TopicRegion.createDestination(Topic
Region.java:170)
        at 
org.apache.activemq.broker.jmx.ManagedTopicRegion.createDestination(M
anagedTopicRegion.java:56)
        at 
org.apache.activemq.broker.region.AbstractRegion.addDestination(Abstr
actRegion.java:76)
        at 
org.apache.activemq.broker.region.RegionBroker.addDestination(RegionB
roker.java:194)
        at 
org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.j
ava:124)
        at 
org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBr
oker.java:139)
        at 
org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.j
ava:124)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addDestination(Mutable
BrokerFilter.java:136)
        at 
org.apache.activemq.broker.region.AbstractRegion.lookup(AbstractRegio
n.java:215)
        at 
org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion
.java:66)
        at 
org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBrok
er.java:261)
        at 
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java
:68)
        at 
org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroke
r.java:75)
        at 
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java
:68)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBro
kerFilter.java:80)
        at 
org.apache.activemq.broker.AbstractConnection.processAddConsumer(Abst
ractConnection.java:422)
        at 
org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:291)

        at 
org.apache.activemq.broker.AbstractConnection.service(AbstractConnect
ion.java:196)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportC
onnection.java:62)
        at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCo
rrelator.java:88)
        at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilt
er.java:70)
        at 
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireForm
atNegotiator.java:114)
        at 
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityM
onitor.java:122)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSup
port.java:87)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:
136)
        at java.lang.Thread.run(Thread.java:595)