-
Bug
-
Resolution: Done
-
Major
-
21.0.0.Beta1
-
None
-
Undefined
-
---
-
---
- configure a MDB with jms topic to read message from a remote artemis server.
- trigger a server reload to recreate multicast queue on the remote artemis server.
11:13:49,627 ERROR [org.wildfly.extension.messaging-activemq] (Thread-0 (ActiveMQ-client-global-threads)) Creating topic jms.topic.testTopic on node UP {"name":"b5f8a47b-f95c-11ea-8a99-b4d5bdef5ecf","factoryClassName":"org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnectorFactory","params":{"port":"61616","localAddress":"127.0.0.1","host":"localhost"},"extraProps":{}} failed: org.jboss.msc.service.StartException in anonymous service: WFLYMSGAMQ0099: Creating the remote destination jms.topic.testTopic failed with error ["AMQ229204: Address already exists: jms.topic.testTopic"] at org.wildfly.extension.messaging-activemq//org.wildfly.extension.messaging.activemq.jms.DestinationConfiguration.createTopic(DestinationConfiguration.java:147) at org.wildfly.extension.messaging-activemq//org.wildfly.extension.messaging.activemq.jms.ExternalJMSTopicService$1.nodeUP(ExternalJMSTopicService.java:92) at org.apache.activemq.artemis@2.10.1//org.apache.activemq.artemis.core.client.impl.Topology$3.run(Topology.java:371) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) 11:13:49,628 WARN [org.apache.activemq.artemis.utils.actors.OrderedExecutor] (Thread-0 (ActiveMQ-client-global-threads)) org.jboss.msc.service.StartException in anonymous service: WFLYMSGAMQ0099: Creating the remote destination jms.topic.testTopic failed with error ["AMQ229204: Address already exists: jms.topic.testTopic"]: java.lang.RuntimeException: org.jboss.msc.service.StartException in anonymous service: WFLYMSGAMQ0099: Creating the remote destination jms.topic.testTopic failed with error ["AMQ229204: Address already exists: jms.topic.testTopic"] at org.wildfly.extension.messaging-activemq//org.wildfly.extension.messaging.activemq.jms.ExternalJMSTopicService$1.nodeUP(ExternalJMSTopicService.java:95) at org.apache.activemq.artemis@2.10.1//org.apache.activemq.artemis.core.client.impl.Topology$3.run(Topology.java:371) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.activemq.artemis.journal//org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) Caused by: org.jboss.msc.service.StartException in anonymous service: WFLYMSGAMQ0099: Creating the remote destination jms.topic.testTopic failed with error ["AMQ229204: Address already exists: jms.topic.testTopic"] at org.wildfly.extension.messaging-activemq//org.wildfly.extension.messaging.activemq.jms.DestinationConfiguration.createTopic(DestinationConfiguration.java:147) at org.wildfly.extension.messaging-activemq//org.wildfly.extension.messaging.activemq.jms.ExternalJMSTopicService$1.nodeUP(ExternalJMSTopicService.java:92) ... 7 more
This happens because WFLY-13581 changed the invocation name from createQueue to createAddress, the reply body includes
["AMQ229204: Address already exists: jms.topic.testTopic"]
which is not being checked in the destinationAlreadyExist method
private boolean destinationAlreadyExist(String body) { return body.contains("AMQ119019") || body.contains("AMQ119018") || body.contains("AMQ229019") || body.contains("AMQ229018"); }
Based on https://github.com/apache/activemq-artemis/blob/master/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/ActiveMQMessageBundle.java#L407, including the extra AMQ229204 would fix this.
Also, I am not sure about Artemis 1.x series as there is no such createAddress invocation in Artemis 1.x.
- relates to
-
WFLY-13581 The multicast queue stats are not correct
- Closed