You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2015/04/04 00:49:55 UTC

[jira] [Commented] (QPID-6429) IO refactoring - use single pooled thread to service each connection

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

ASF subversion and git services commented on QPID-6429:
-------------------------------------------------------

Commit 1671203 from [~k-wall] in branch 'qpid/trunk'
[ https://svn.apache.org/r1671203 ]

QPID-6429: [Java Broker] Discard only ByteBuffers that have been sent down the wire.

In #dowrite, the algorithm means to poll off only the ByteBuffers that have been completely sent down the wire, however it is missing a break.  The effect of this is, if we have back pressure
and send has been called with an empty ByteBuffer, it can poll away ByteBuffers from the front of the queue that are have content.

The Python EchoTests demonstrate the bug because they a) use messages that are sufficient large to cause the client to exert back pressure and b) there are no messages in the properties so
send is called with an empty ByteBuffer.

> IO refactoring - use single pooled thread to service each connection
> --------------------------------------------------------------------
>
>                 Key: QPID-6429
>                 URL: https://issues.apache.org/jira/browse/QPID-6429
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>            Reporter: Keith Wall
>             Fix For: 6.0 [Java]
>
>
> Change Broker threading model to utilise a thread pool to service IO requests. Refactor protocol parts so that management actions (such as connection close) no longer push frames directly onto into transport, instead management actions merely inform the protocol layer that there is a task to be done and cause the IO layer to be schedule, letting the IO thread perform the protocol action itself.



--
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