[
https://issues.apache.org/jira/browse/DISPATCH-767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16100127#comment-16100127
]
ASF GitHub Bot commented on DISPATCH-767:
-----------------------------------------
Github user ChugR commented on a diff in the pull request:
https://github.com/apache/qpid-dispatch/pull/177#discussion_r129307766
--- 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 --
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: [email protected]
For additional commands, e-mail: [email protected]