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

Andrew Stitcher commented on PROTON-2952:
-----------------------------------------

If the application is expecting a message with a limited length and waits for 
the end of the delivery to fetch the whole message there is no limit to how 
long that message sent by the peer can be up to using all available memory. 
This is what common message oriented APIs do so these applications can be 
overwhelmed!

For streaming application where there is no fixed length to the delivery and 
the receiving application receives parts of the overall delivery before the 
delivery is completed.

These constraints mean that we can't limited overall message size but can only 
limit the amount of memory being used for buffering unread parts of the message.

> Multi transfer message deliveries can consume indefinite memory
> ---------------------------------------------------------------
>
>                 Key: PROTON-2952
>                 URL: https://issues.apache.org/jira/browse/PROTON-2952
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: proton-c-0.40.0
>            Reporter: Andrew Stitcher
>            Assignee: Andrew Stitcher
>            Priority: Major
>             Fix For: proton-c-0.41.0
>
>
> Proton currently has no limit to  the amount of buffered memory that can be 
> used for a message delivery. This is because deliveries have no limit to the 
> number of transfer performatives that make them up and there's no way to know 
> how many more frames there might be in the delivery, so proton will buffer 
> every message byte in a delivery until it is used.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to