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

ASF GitHub Bot commented on DISPATCH-767:
-----------------------------------------

Github user alanconway commented on a diff in the pull request:

    https://github.com/apache/qpid-dispatch/pull/172#discussion_r126172968
  
    --- Diff: src/router_core/forwarder.c ---
    @@ -395,9 +415,22 @@ int qdr_forward_closest_CT(qdr_core_t      *core,
         // Forward to an in-process subscriber if there is one.
         //
         if (!exclude_inprocess) {
    +        bool receive_complete = qd_message_receive_complete(msg);
             qdr_subscription_t *sub = DEQ_HEAD(addr->subscriptions);
             if (sub) {
    -            qdr_forward_on_message_CT(core, sub, in_delivery ? 
in_delivery->link : 0, msg);
    +
    +            //
    +            // Only if the message has been completely received, forward 
it.
    +            // Subscriptions, at the moment, dont have the ability to deal 
with partial messages
    +            //
    +            if (receive_complete)
    --- End diff --
    
    For streaming we need to start forwarding before completion.


> Message Cut-Through/Streaming for efficient handling of large messages
> ----------------------------------------------------------------------
>
>                 Key: DISPATCH-767
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-767
>             Project: Qpid Dispatch
>          Issue Type: Improvement
>          Components: Router Node
>            Reporter: Ted Ross
>            Assignee: Ganesh Murthy
>             Fix For: 1.0.0
>
>
> When large, multi-frame messages are sent through the router, there is no 
> need to wait for the entire message to arrive before starting to send it 
> onward.
> This feature causes the router to route the first frame and allow subsequent 
> frames in a delivery to be streamed out in pipeline fashion.  Ideally, the 
> memory usage in the router should only involve pending frames.  This would 
> allow the router to handle arbitrary numbers of concurrent arbitrarily large 
> messages.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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

Reply via email to