[asterisk-dev] [Code Review] 2474: Make local channel optimization also use the swap method.

rmudgett reviewboard at asterisk.org
Wed Apr 24 21:57:59 CDT 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/2474/
-----------------------------------------------------------

Review request for Asterisk Developers.


Bugs: ASTERISK-21058
    https://issues.asterisk.org/jira/browse/ASTERISK-21058


Repository: Asterisk


Description
-------

Follow up to https://reviewboard.asterisk.org/r/2461/

Added the additional way to optimize out local channels in more circumstances.  Swap the Local;2 channel in BridgeB with the only peer channel (A) in BridgeA.  This optimization strategy is needed for the parking and conference bridges to keep bridge channel information associated with the same call.

A -- BridgeA -- Local;1-Local;2 -- BridgeB -- B

* Extracted the ast_bridge_channel_peer() routine from the simple_bridge so local channel swap optimization can utilize it as well.

* Implemented ast_bridge_move() as a side benefit to the swap optimization.

* Refactored ast_bridge_local_optimized_out() to simplify its structure because the swap optimization needs to be checked before the merge optimization.


Diffs
-----

  /team/group/bridge_construction/apps/app_bridgewait.c 386482 
  /team/group/bridge_construction/apps/confbridge/conf_config_parser.c 386482 
  /team/group/bridge_construction/bridges/bridge_simple.c 386482 
  /team/group/bridge_construction/include/asterisk/bridging.h 386482 
  /team/group/bridge_construction/include/asterisk/bridging_features.h 386482 
  /team/group/bridge_construction/main/bridging.c 386482 

Diff: https://reviewboard.asterisk.org/r/2474/diff/


Testing
-------

The local channel optimization now normally does the swap method.

* Checked that local channels can optimize themselves out in the normal situation as shown in the description.

* Checked that the local channels can optimize themselves out in the situation where there is a chain of 300 local channel pairs.  This seems to work faster than it used to, but that was not quantified.


Thanks,

rmudgett

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20130425/4b29490e/attachment.htm>


More information about the asterisk-dev mailing list