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

Cannot create subscriber due to "javax.jms.InvalidDestinationRuntimeException: AMQ129002: Destination jms.topic.MY_TOPIC does not exist"

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Blocker
    • None
    • AMQ 7.2.0.GA
    • addressing, broker-core
    • None

    Description

      There is regression in AMQ 7.2.0 (not in EAP 7.x) which causes that non-durable subscriber on topic cannot be created. This is not blocker for 7.2.0.Beta but it is blocker for 7.2.0.GA as AMQ 7.2.0 cannot pass testing with this issue. Note that this is working with AMQ 7.0.2 and 7.1.1.

      Following code:

      @Resource(lookup = "java:/MY_TOPIC")
      private Topic inTopic;
      ...
      
      try (JMSContext context = cf.createContext()) {
                  System.out.println("Create a shared non-durable Subscription and a JMSConsumer for it");
                  JMSConsumer consumer = context.createSharedConsumer(inTopic,  "createSharedConsumerTest1"); <-- throws InvalidDestinationRuntimeException
                  System.out.println("createSharedConsumerTest1 consumer created");
              }
      

      causes that InvalidDestinationRuntimeException is thrown:

      13:14:50,327 INFO  [stdout] (default task-7) Create a shared non-durable Subscription and a JMSConsumer for it
      13:14:50,342 ERROR [io.undertow.request] (default task-7) UT005023: Exception handling request to /jmsServlet-1.0-SNAPSHOT/: javax.jms.InvalidDestinationRuntimeException: AMQ129002: Destination jms.topic.MY_TOPIC does not exist
      	at org.apache.activemq.artemis.jms.client.JmsExceptionUtils.convertToRuntimeException(JmsExceptionUtils.java:65)
      	at org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createSharedConsumer(ActiveMQJMSContext.java:479)
      	at JmsServlet.processRequest(JmsServlet.java:67)
      	at JmsServlet.doGet(JmsServlet.java:43)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) [jboss-servlet-api_3.1_spec-1.0.0.Final-redhat-1.jar:1.0.0.Final-redhat-1]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [jboss-servlet-api_3.1_spec-1.0.0.Final-redhat-1.jar:1.0.0.Final-redhat-1]
      	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:64) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.SessionRestoringHandler.handleRequest(SessionRestoringHandler.java:119) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) [undertow-servlet-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:330) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:812) [undertow-core-1.4.18.SP7-redhat-1.jar:1.4.18.SP7-redhat-1]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_181]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_181]
      	at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_181]
      Caused by: javax.jms.InvalidDestinationException: AMQ129002: Destination jms.topic.MY_TOPIC does not exist
      	at org.apache.activemq.artemis.jms.client.ActiveMQSession.internalCreateSharedConsumer(ActiveMQSession.java:563)
      	at org.apache.activemq.artemis.jms.client.ActiveMQSession.createSharedConsumer(ActiveMQSession.java:466)
      	at org.apache.activemq.artemis.jms.client.ActiveMQSession.createSharedConsumer(ActiveMQSession.java:437)
      	at org.apache.activemq.artemis.ra.ActiveMQRASession.createSharedConsumer(ActiveMQRASession.java:1235)
      	at org.apache.activemq.artemis.jms.client.ActiveMQJMSContext.createSharedConsumer(ActiveMQJMSContext.java:475)
      	... 43 more
      Caused by: ActiveMQNonExistentQueueException[errorType=QUEUE_DOES_NOT_EXIST message=AMQ129002: Destination jms.topic.MY_TOPIC does not exist]
      	... 48 more
      

      Issue was hit in TCK 7 tests (list is WIP):

      com/sun/ts/tests/jms/core20/jmscontexttopictests/Client.java#createSharedConsumerTest1_from_appclient
      

      Attaching EAP 7 and AMQ 7 configs.

      Attachments

        Issue Links

          Activity

            People

              mtaylor1@redhat.com Martyn Taylor (Inactive)
              mnovak1@redhat.com Miroslav Novak
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: