kgiusti commented on a change in 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


With regards,
Apache Git Services

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

Reply via email to