qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Keith Wall (JIRA)" <j...@apache.org>
Subject [jira] [Created] (QPID-6495) Ensure that closing a 0-10 connection from management releases the protocol layer's session resources too
Date Tue, 14 Apr 2015 22:20:59 GMT
Keith Wall created QPID-6495:
--------------------------------

             Summary: Ensure that closing a 0-10 connection from management releases the protocol
layer's session resources too
                 Key: QPID-6495
                 URL: https://issues.apache.org/jira/browse/QPID-6495
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
            Reporter: Keith Wall
             Fix For: 6.0 [Java]


On closing a 0-10 connection from management (or Broker shutdown) currently consumers are
closed, but the protocol layer's session resources remain even after the connection itself
is closed (ServerConnection#closeAsync)

The work of QPID-6450 exposed this as a problem.  It introduced a VHN scoped task executor
which is closed as the VHN is closed.  In the current arrangement this means that it is the
Port that attempts to release the session's resources, leading to a task executor as the session
tries to schedule the destruction of its model object on the now closed task executor.

{noformat}
Thread terminated due to uncaught exceptionjava.lang.IllegalStateException: Task executor
is not in ACTIVE state
at org.apache.qpid.server.configuration.updater.TaskExecutorImpl.checkState(TaskExecutorImpl.java:308)
at org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submit(TaskExecutorImpl.java:136)
at org.apache.qpid.server.model.AbstractConfiguredObject.doOnConfigThread(AbstractConfiguredObject.java:498)
at org.apache.qpid.server.model.AbstractConfiguredObject.setDesiredState(AbstractConfiguredObject.java:1272)
at org.apache.qpid.server.model.AbstractConfiguredObject.deleteAsync(AbstractConfiguredObject.java:1773)
at org.apache.qpid.server.model.adapter.SessionAdapter$2.performAction(SessionAdapter.java:76)
at org.apache.qpid.server.protocol.v0_10.ServerSession.onClose(ServerSession.java:498)
at org.apache.qpid.server.protocol.v0_10.ServerSessionDelegate.closed(ServerSessionDelegate.java:1625)
at org.apache.qpid.transport.Session.closed(Session.java:1108)
at org.apache.qpid.transport.Connection.closed(Connection.java:599)
at org.apache.qpid.server.protocol.v0_10.ServerConnection.closed(ServerConnection.j
at org.apache.qpid.transport.network.Assembler.closed(Assembler.java:113)
at org.apache.qpid.transport.network.InputHandler.closed(InputHandler.java:215)
at org.apache.qpid.server.protocol.v0_10.ProtocolEngine_0_10.closed(ProtocolEngine_0_10.java:270)
at org.apache.qpid.server.protocol.MultiVersionProtocolEngine.closed(MultiVersionProtocolEngine.java:129)
at org.apache.qpid.server.transport.NonBlockingConnection.doWork(NonBlockingConnection.java:325)
at org.apache.qpid.server.transport.NetworkConnectionScheduler.processConnection(NetworkConnectionScheduler.java:94)
at org.apache.qpid.server.transport.NetworkConnectionScheduler.access$000(NetworkConnectionScheduler.java:34)
at org.apache.qpid.server.transport.NetworkConnectionScheduler$2.run(NetworkConnectionScheduler.java:75)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
{noformat}




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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Mime
View raw message