[
https://issues.apache.org/jira/browse/DISPATCH-1576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17040551#comment-17040551
]
ASF GitHub Bot commented on DISPATCH-1576:
------------------------------------------
ganeshmurthy commented on pull request #689: DISPATCH-1576: Avoid Q2/Q3 flow
control on router control links
URL: https://github.com/apache/qpid-dispatch/pull/689#discussion_r381641296
##########
File path: src/router_node.c
##########
@@ -1415,16 +1419,18 @@ static void CORE_link_second_attach(void *context,
qdr_link_t *link, qdr_terminu
//
pn_link_open(pn_link);
- qd_connection_t *conn = qd_link_connection(qlink);
- qdr_connection_t *qdr_conn = (qdr_connection_t*)
qd_connection_get_context(conn);
+ // DISPATCH-1460, DISPATCH-1576 Do not block router control messages.
+ // Control messages must be received in their entirety before they are
+ // consumed. Flow controlling such messages mean they will never fully
+ // arrive thus never be consumed (therefore flow control is never
+ // released).
//
- // All links on the inter router or edge connection have unbounded q2 limit
- //
- if (qdr_connection_role(qdr_conn) == QDR_ROLE_EDGE_CONNECTION ||
qdr_connection_role(qdr_conn) == QDR_ROLE_INTER_ROUTER) {
+ const qd_link_type_t lt = qdr_link_type(link);
+ if (lt == QD_LINK_CONTROL || lt == QD_LINK_EDGE_DOWNLINK) {
Review comment:
I don't think we need to include QD_LINK_EDGE_DOWNLINK. Links of
QD_LINK_EDGE_DOWNLINK must be backpressured just like the other links. The only
link that should not be front pressured or back pressured is QD_LINK_CONTROL
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Disable Q2/Q3 on router control links
> -------------------------------------
>
> Key: DISPATCH-1576
> URL: https://issues.apache.org/jira/browse/DISPATCH-1576
> Project: Qpid Dispatch
> Issue Type: Improvement
> Components: Router Node
> Affects Versions: 1.10.0
> Reporter: Ken Giusti
> Assignee: Ken Giusti
> Priority: Minor
> Fix For: 1.11.0
>
>
> Refine the fix for DISPATCH-1460: Disable flow control on a per-link basis
> rather than for an entire connection.
> This patch reduces the scope of Qx flow control disable by only disabling it
> on links that carry router control messages. These messages are not consumed
> until they have been received in their entirety, which mean that if they are
> flow controlled the messages will never be consumed.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]