[
https://issues.apache.org/jira/browse/PROTON-2838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17866521#comment-17866521
]
ASF subversion and git services commented on PROTON-2838:
---------------------------------------------------------
Commit e4e62f49e05a9f26b5c86f1eb829f2180604bac1 in qpid-proton's branch
refs/heads/main from Andrew Stitcher
[ https://gitbox.apache.org/repos/asf?p=qpid-proton.git;h=e4e62f49e ]
PROTON-2838: Remove pn_data_t operations from frame codec
We only convert to pn_data_t if the application requests the data
as a pn_data_t.
- renamed message rest of message pn_data members deprecated
- Added some more useful emmiter/consumer code
- parse message directly to raw bytes
- parse error conditions without pn_data_t
- Avoid using pn_amqp_decode_*C when not really needed
- Tidied up message codec
> Remove all operations using the pn_data_t structure from the frame decode path
> ------------------------------------------------------------------------------
>
> Key: PROTON-2838
> URL: https://issues.apache.org/jira/browse/PROTON-2838
> Project: Qpid Proton
> Issue Type: Improvement
> Components: proton-c
> Reporter: Andrew Stitcher
> Assignee: Andrew Stitcher
> Priority: Major
>
> The pn_data_t structure is relatively inefficient and consumes quite a lot of
> memory. There are a number of places that it is used in decoding incoming
> frames whether or not that part of the frame is ever required by the
> application via the Proton API.
> We can avoid decoding the relevant protocol fields until the API requests
> them by just storing the raw protocol bytes and only creating the equivalent
> pn_data_t if it is requested by the API.
> This will also form the groundwork for a new API that allows us to creat and
> query these fields more efficiently using a new API.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]