[asterisk-bugs] [JIRA] (ASTERISK-25040) pbx: Improve performance of reloads by making hint destruction more performant

Asterisk Team (JIRA) noreply at issues.asterisk.org
Sun Jul 26 11:46:38 CDT 2015


    [ https://issues.asterisk.org/jira/browse/ASTERISK-25040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=227046#comment-227046 ] 

Asterisk Team commented on ASTERISK-25040:
------------------------------------------

This issue has been reopened as a result of your commenting on it as the reporter. It will be triaged once again as applicable.

> pbx: Improve performance of reloads by making hint destruction more performant
> ------------------------------------------------------------------------------
>
>                 Key: ASTERISK-25040
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-25040
>             Project: Asterisk
>          Issue Type: Improvement
>      Security Level: None
>          Components: Core/PBX
>            Reporter: Matt Jordan
>      Target Release: 11.18.0, 11.19.0, 13.4.0
>
>         Attachments: ASTERISK-25040-master.diff
>
>
> The PBX core maintains two hash tables for hints: a container of the actual hints ({{hints}}), along with a container of devices that are watching that hint ({{hintdevices}}). When a dialplan reload occurs, each hint in the hints container is destroyed; this requires a lookup in the container of devices to find the device => hint mapping object. In the current code, this performs an {{ao2_callback}}, iterating over each of the device to hint objects in the {{hintdevices}} container. For a large number of hints, this is extremely
> expensive: dialplan reloads with 20000 hints could take several minutes in just this phase.
> This process could be made more efficient by storing the key of the device (its name) with the hint. This would prevent an expensive {{ao2_callback}}.



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



More information about the asterisk-bugs mailing list