Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Not A Problem
-
0.6.0
-
None
-
None
Description
I have the following configuration for connecting to broker in my qdrouterd.conf
connector { name: ba role: route-container host: 172.28.128.221 port: amqp sasl-mechanisms: ANONYMOUS } address { prefix: jms.queue waypoint: yes } autoLink { addr: jms.queue.first dir: in connection: ba } autoLink { addr: jms.queue.first dir: out connection: ba } autoLink { addr: jms.queue.second dir: in connection: ba } autoLink { addr: jms.queue.second dir: out connection: ba }
If I stop dispatch demon with sudo service qdrouterd stop and then kill Artemis broker with ^C, broker prints the following
12:18:04,721 INFO [org.apache.activemq.artemis] AMQ241001: HTTP Server started at http://localhost:8161 12:18:04,722 INFO [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API available at http://localhost:8161/jolokia ^C12:18:16,881 ERROR [org.apache.activemq.artemis.core.server] AMQ224065: Failed to remove auto-created queue jms.queue.second: java.lang.IllegalStateException: Cannot access JMS Server, core server is not active at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.checkInitialised(JMSServerManagerImpl.java:1416) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.destroyQueue(JMSServerManagerImpl.java:766) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl$JMSQueueDeleter.delete(JMSServerManagerImpl.java:1639) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.AutoCreatedQueueManagerImpl$1.run(AutoCreatedQueueManagerImpl.java:50) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.utils.ReferenceCounterUtil.decrement(ReferenceCounterUtil.java:55) [artemis-commons-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.AutoCreatedQueueManagerImpl.decrement(AutoCreatedQueueManagerImpl.java:78) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl.removeConsumer(QueueImpl.java:768) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.removeItself(ServerConsumerImpl.java:500) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.close(ServerConsumerImpl.java:446) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.doClose(ServerSessionImpl.java:345) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl$1.done(ServerSessionImpl.java:1160) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:168) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.close(ServerSessionImpl.java:1152) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.freezeConnections(ActiveMQServerImpl.java:926) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:741) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:654) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:547) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.stop(JMSServerManagerImpl.java:407) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.integration.FileBroker.stop(FileBroker.java:79) [artemis-cli-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.cli.commands.Run$2.run(Run.java:166) [artemis-cli-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] 12:18:16,886 ERROR [org.apache.activemq.artemis.core.server] AMQ224065: Failed to remove auto-created queue jms.queue.first: java.lang.IllegalStateException: Cannot access JMS Server, core server is not active at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.checkInitialised(JMSServerManagerImpl.java:1416) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.destroyQueue(JMSServerManagerImpl.java:766) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl$JMSQueueDeleter.delete(JMSServerManagerImpl.java:1639) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.AutoCreatedQueueManagerImpl$1.run(AutoCreatedQueueManagerImpl.java:50) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.utils.ReferenceCounterUtil.decrement(ReferenceCounterUtil.java:55) [artemis-commons-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.AutoCreatedQueueManagerImpl.decrement(AutoCreatedQueueManagerImpl.java:78) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl.removeConsumer(QueueImpl.java:768) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.removeItself(ServerConsumerImpl.java:500) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.close(ServerConsumerImpl.java:446) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.doClose(ServerSessionImpl.java:345) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl$1.done(ServerSessionImpl.java:1160) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:168) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.close(ServerSessionImpl.java:1152) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.freezeConnections(ActiveMQServerImpl.java:926) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:741) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:654) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:547) [artemis-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.stop(JMSServerManagerImpl.java:407) [artemis-jms-server-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.integration.FileBroker.stop(FileBroker.java:79) [artemis-cli-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] at org.apache.activemq.artemis.cli.commands.Run$2.run(Run.java:166) [artemis-cli-1.2.0.amq-700007-redhat-1.jar:1.2.0.amq-700007-redhat-1] 12:18:16,946 INFO [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 1.2.0.amq-700007-redhat-1 [f08081ff-3794-11e6-9e79-08002758ce8c] stopped, uptime 15.179 seconds
Apparently, qdrouterd does not close autolinks and the connector before it exits. If I delete all these with qdmanage before I stop the broker, the error is not printed.
This is a problem because of https://issues.jboss.org/browse/ENTMQ-1701 Unable to consume from queue if the previous consumer did not exit cleanly