[ https://issues.apache.org/jira/browse/DISPATCH-1541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17016284#comment-17016284 ]
ASF GitHub Bot commented on DISPATCH-1541: ------------------------------------------ kgiusti commented on pull request #663: DISPATCH-1541: Sets the presettled flag on large streaming discarded … URL: https://github.com/apache/qpid-dispatch/pull/663#discussion_r367074784 ########## File path: src/router_node.c ########## @@ -355,6 +355,16 @@ static bool AMQP_rx_handler(void* context, qd_link_t *link) // Message has been marked for discard, no further processing necessary // if (receive_complete) { + // If this discarded delivery has already been settled by proton, + // set the presettled flag on the delivery to true if it is not already true. + // Since the entire message has already been received, we directly call the + // function to set the pre-settled flag since we cannot go thru the core-thread + // to do this since the delivery has been discarded. + // Discarded streaming deliveries are not put thru the core thread via the continue action. + if (pn_delivery_settled(pnd)) + qdr_delivery_set_presettled(delivery); Review comment: Careful! the delivery pointer may be null here. ---------------------------------------------------------------- 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: us...@infra.apache.org > released and modified counters can get incremented for presettled deliveries > ---------------------------------------------------------------------------- > > Key: DISPATCH-1541 > URL: https://issues.apache.org/jira/browse/DISPATCH-1541 > Project: Qpid Dispatch > Issue Type: Bug > Reporter: Gordon Sim > Priority: Major > > Have two routers with sender on one, receiver on other. Send multi-frame > presettled messages. Kill both sender and receiver midstream (can't get a > super simple reproducer as yet) and keep repeating. Eventually may see > non-zero rel and mod stats on downstream router even though messages are > presettled. > > {noformat} > routerA > Router Links > type dir conn id id peer class addr phs > cap pri undel unsett deliv presett psdrop acc rej rel mod delay > rate stuck cred blkd > > ================================================================================================================================================================================= > inter-router out 1 3 > 2000 0 0 0 104 104 0 0 0 0 0 24 > 0 0 250 - > {noformat} > {noformat} > routerB > Router Links > type dir conn id id peer class addr phs > cap pri undel unsett deliv presett psdrop acc rej rel mod delay > rate stuck cred blkd > > ================================================================================================================================================================================ > inter-router in 1 3 > 250 0 0 0 83 0 0 0 0 22 0 4 0 > 0 250 - > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org