qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DISPATCH-767) Message Cut-Through/Streaming for efficient handling of large messages
Date Tue, 25 Jul 2017 15:07:00 GMT

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

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

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

    https://github.com/apache/qpid-dispatch/pull/177#discussion_r129333319
  
    --- Diff: src/message.c ---
    @@ -999,11 +1014,84 @@ void qd_message_set_ingress_annotation(qd_message_t *in_msg, qd_composed_field_t
         qd_compose_free(ingress_field);
     }
     
    +bool qd_message_is_discard(qd_message_t *msg)
    +{
    +    if (!msg)
    +        return false;
    +    qd_message_pvt_t *pvt_msg = (qd_message_pvt_t*) msg;
    +    return pvt_msg->content->discard;
    +}
    +
    +void qd_message_set_discard(qd_message_t *msg, bool discard)
    +{
    +    if (!msg)
    +        return;
    +
    +    qd_message_pvt_t *pvt_msg = (qd_message_pvt_t*) msg;
    +    pvt_msg->content->discard = discard;
    +}
    +
    +size_t qd_message_fanout(qd_message_t *in_msg)
    +{
    +    if (!in_msg)
    +        return 0;
    +    qd_message_pvt_t *msg = (qd_message_pvt_t*) in_msg;
    +    return msg->content->fanout;
    +}
    +
    +void qd_message_add_fanout(qd_message_t *in_msg)
    +{
    +    assert(in_msg);
    +    qd_message_pvt_t *msg = (qd_message_pvt_t*) in_msg;
    +    msg->content->fanout++;
    --- End diff --
    
    yes, agreed, atomic inc 


> 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Mime
View raw message