You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/10/14 17:43:00 UTC

[jira] [Commented] (DISPATCH-1803) HTTP1.x adaptor stall when body data section > Q2 limit

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

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

kgiusti opened a new pull request #879:
URL: https://github.com/apache/qpid-dispatch/pull/879


   This may be the wrong way to solve this - fixing it at the message construction phase rather than at message decode.
   
   This patch adds a new body-data message API call:
   void qd_message_body_data_append(qd_message_t *msg, qd_buffer_list_t *data);
   
   A single call to this would replace this logic in the adaptors:
   
   -    //                                                                                                                                           
   -    // Compose a DATA performative for this section of the stream                                                                                
   -    //                                                                                                                                           
   -    qd_composed_field_t *field = qd_compose(QD_PERFORMATIVE_BODY_DATA, 0);                                                                       
   -    qd_compose_insert_binary_buffers(field, body);                                                                                               
   -                                                                                                                                                 
   -    //                                                                                                                                           
   -    // Extend the streaming message and free the composed field                                                                                  
   -    //                                                                                                                                           
   -    qd_message_extend(msg, field);                                                                                                               
   -    qd_compose_free(field);                                                                                                                      
   


----------------------------------------------------------------
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:
users@infra.apache.org


> HTTP1.x adaptor stall when body data section > Q2 limit
> -------------------------------------------------------
>
>                 Key: DISPATCH-1803
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-1803
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Protocol Adaptors
>    Affects Versions: 1.15.0
>            Reporter: Ken Giusti
>            Assignee: Ken Giusti
>            Priority: Blocker
>              Labels: HTTP/1.x
>             Fix For: 1.15.0
>
>
> Since the adaptors process body-data chunks by buffering the full body-data before forwarding it to the endpoint, body data chunks of > Q2 limit will cause the message forwarding to hang as Q2 limit will be hit yet the buffers will not be drained since the adaptor is waiting for the entire body data to arrive before the adaptor can write out the buffers.
> My apologies to Mrs. Smith, my fourth grade English teacher, for the above run-on sentence.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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