You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rob Godfrey (JIRA)" <ji...@apache.org> on 2015/04/17 11:41:58 UTC

[jira] [Resolved] (QPID-6495) Ensure that closing a 0-10 connection from management releases the protocol layer's session resources too

     [ https://issues.apache.org/jira/browse/QPID-6495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rob Godfrey resolved QPID-6495.
-------------------------------
    Resolution: Fixed

Looks good to me

> 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
>            Assignee: Rob Godfrey
>             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