[ 
https://issues.apache.org/jira/browse/PROTON-2501?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Stitcher updated PROTON-2501:
------------------------------------
    Summary: Eliminate all use of the pn_data_t data structure in AMQP frame 
processing crirical path  (was: CLONE - Reduce (ultimately eliminate) all use 
of the pn_data_t data structure in AMQP frame processing)

> Eliminate all use of the pn_data_t data structure in AMQP frame processing 
> crirical path
> ----------------------------------------------------------------------------------------
>
>                 Key: PROTON-2501
>                 URL: https://issues.apache.org/jira/browse/PROTON-2501
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-c
>            Reporter: Andrew Stitcher
>            Assignee: Andrew Stitcher
>            Priority: Major
>
> In current proton protocol processing code make heavy use of the pn_data_t 
> data structure for coding and decoding AMQP frames to send and receive. 
> Unfortunately the data structure is complex and the code which uses it is not 
> very efficient. This means that a lot of CPU is consumed maniputing these 
> data structures unnecessarily during the critical path operations of proton. 
> During frame processing pn_data_t is not even really necessary as it is only 
> used as an intermediary to extract necessary frame parameters out of the 
> frames (or as an intermediary to construct the frames from the necessary 
> frame parameters.
> This means that is entirely feasible to go directly from/to the parameters 
> to/from the frames without using an intermediate pn_data_t at all.
> Much (most?) of this work has now been done but there are a few aspects still 
> open:
> A complicated aspect of this and one yet to complete is that of using non 
> scalar structured data as part of AMQP frames, Specifically where maps are 
> used as part of the frame - for instance in the various property maps.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to