Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-3692

MDB Durable Subscriber error in AMQ 7

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • AMQ 7.8.0.CR1
    • AMQ 7.5.0.GA, AMQ 7.7.0.GA, AMQ 7.6.0.GA
    • broker-core
    • None
    • Hide
      Previously, if a message-driven bean (MDB) used the ActiveMQ Java Connector Architecture (JCA) resource adapter (for example, in Red Hat JBoss Enterprise Application Platform) to create a durable topic subscription, the MDB would fail to deploy. This issue is now resolved.
      Show
      Previously, if a message-driven bean (MDB) used the ActiveMQ Java Connector Architecture (JCA) resource adapter (for example, in Red Hat JBoss Enterprise Application Platform) to create a durable topic subscription, the MDB would fail to deploy. This issue is now resolved.
    • Documented as Resolved Issue
    • Verified in a release

      I have a EAP 7.2 with a remote AMQ 7.5 broker configuration. I'm trying to create a durable topic subscriber using a MDB without success.

      Here is the activation properties of my MDB:

      • destination = MyTopic
      • subscriptionName = example
      • subscriptionDurability = Durable
      • clientID = example

      2 things to notice when I start EAP:

      • It creates an address in AMQ 7.5: MyTopic:example.example (multicast/multicast)
      • It fails with the following exception in EAP:
      ERROR [org.apache.activemq.artemis.ra] (default-threads - 1) AMQ154003: Unable to reconnect org.apache.activemq.artemis.ra.inflow.ActiveMQActivationSpec(ra=org.wildfly.extension.messaging.activemq.ActiveMQResourceAdapter@9382da9c destination=MyTopic destinationType=javax.jms.Topic ack=Auto-acknowledge durable=true clientID=example subscription=example user=null maxSession=15): ActiveMQIllegalStateException[errorType=ILLEGAL_STATE message=AMQ229025: Cannot delete queue example.example on binding example.example - it has consumers  org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding]
        at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:423)
        at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:319)
        at org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionContext.deleteQueue(ActiveMQSessionContext.java:279)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.deleteQueue(ClientSessionImpl.java:679)
      

      It also fails in AMQ side with a similar exception:

      DEBUG [org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler] Sending exception to client: ActiveMQIllegalStateException[errorType=ILLEGAL_STATE message=AMQ229025: Cannot delete queue example.example on binding example.example - it has consumers 
      org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding]
        at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.destroyQueue(ActiveMQServerImpl.java:2163) [artemis-server-2.10.0.redhat-00004.jar:2.10.0.redhat-00004]
       

              rhn-support-jbertram Justin Bertram
              Asouza@redhat.com Angelo Souza
              Oleg Sushchenko Oleg Sushchenko
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: