[
https://issues.apache.org/jira/browse/QPID-6495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Keith Wall updated QPID-6495:
-----------------------------
Status: Reviewable (was: In Progress)
> 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: 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: [email protected]
For additional commands, e-mail: [email protected]