[ 
https://issues.apache.org/jira/browse/DISPATCH-432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15364992#comment-15364992
 ] 

Ganesh Murthy commented on DISPATCH-432:
----------------------------------------

Jiri, is the purpose of this bug to point out that the Dispatch Router is not 
'cleanly' closing all the connections on shutdown? The router does close all 
connections on shutdown albeit not 'cleanly'

> Qpid Dispatch Router does not close connection to Broker on exit
> ----------------------------------------------------------------
>
>                 Key: DISPATCH-432
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-432
>             Project: Qpid Dispatch
>          Issue Type: Bug
>    Affects Versions: 0.6.0
>            Reporter: Jiri Danek
>
> I have the following configuration for connecting to broker in my 
> {{qdrouterd.conf}}
> {noformat}
> 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
> }
> {noformat}
> If I stop dispatch demon with {{sudo service qdrouterd stop}} and then kill 
> Artemis broker with ^C, broker prints the following
> {noformat}
> 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
> {noformat}
> 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



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to