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

Matt Jordan (JIRA) noreply at issues.asterisk.org
Fri Mar 7 11:23:48 CST 2014


Matt Jordan created ASTERISK-23450:
--------------------------------------

             Summary: Formats: Improve performance of Asterisk by handling formats in a more performant manner
                 Key: ASTERISK-23450
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23450
             Project: Asterisk
          Issue Type: Improvement
      Security Level: None
          Components: Core/General, Formats/General
    Affects Versions: 12.0.0
            Reporter: Matt Jordan
            Assignee: Joshua Colp


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