[asterisk-bugs] [JIRA] (ASTERISK-23114) Formats: Improve performance of Asterisk by handling formats in a more performant manner

Matt Jordan (JIRA) noreply at issues.asterisk.org
Sun Jul 20 17:17:56 CDT 2014


     [ https://issues.asterisk.org/jira/browse/ASTERISK-23114?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matt Jordan closed ASTERISK-23114.
----------------------------------

    Resolution: Fixed

> Formats: Improve performance of Asterisk by handling formats in a more performant manner
> ----------------------------------------------------------------------------------------
>
>                 Key: ASTERISK-23114
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23114
>             Project: Asterisk
>          Issue Type: Improvement
>      Security Level: None
>          Components: Core/General, Formats/General
>    Affects Versions: 12.0.0
>            Reporter: Matt Jordan
>
> See Josh's e-mail to the [asterisk-dev list|http://lists.digium.com/pipermail/asterisk-dev/2014-January/064463.html] for more information.
> This part of the task would be to begin the work outlined in that e-mail; specifically, step 1:
> {quote}
> 1. Make ast_format an ao2 object
> I think what needs to happen is that ast_format becomes an immutable ao2 reference counted object. Copying becomes bumping the reference count and returning it.
> Additional related stuff can be attached and guaranteed that it will be disposed of. This can include an actual list of attributes, and a pointer to the format negotiatior. As a result operations become faster to do and memory usage goes down.
> {quote}
> This should include the following:
> # Make a project page under Asterisk 13 (yes, this is going into the 12 branch, but we're really doing this for the LTS: performance there matters more) on the Asterisk wiki outlining the same thing as the e-mail. Cut & paste if necessary :-)
> # This will almost necessarily include API changes to {{format.h}}/{{format_cap.h}}. The API should be spec'd out for how people will use the formats, keeping in mind how they are used today. In general, people will need to do some of the following:
> ## Create an allowed set of formats
> ## Add or remove formats from that set
> ## Copy the set of formats
> ## Compare two sets of formats for intersection/union
> # Gain concurrence on the API. Follow up the -dev e-mail would be appropriate.
> # Unit tests should be written that exercise the API.
> # CODE!
> # We will also need sufficient tests in Asterisk to exercise format negotiation to feel comfortable with the functionality of the changes.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list