[test-results] [Bamboo] Asterisk > 1.4 - Linux - i686 > #81 has FAILED (7 tests failed). Change made by Russell Bryant.
Bamboo
bamboo at asterisk.org
Wed Nov 24 11:13:24 CST 2010
-------------- next part --------------
-----------------------------------------------------------------------
Asterisk > 1.4 - Linux - i686 > #81 failed.
-----------------------------------------------------------------------
Code has been updated by Russell Bryant.
7/47 tests failed.
http://bamboo.asterisk.org/browse/AST-1432-81/
--------------
Failing Jobs
--------------
- Default Job (Default Stage): 7 of 47 tests failed.
--------------
Code Changes
--------------
Russell Bryant (296000):
>Handle failures building translation paths more effectively.
>
>The problem scenario occurred on a heavily loaded system that was using the
>codec_dahdi module and exceeded the hardware transcoding capacity. The failure
>mode at that point was not good. The report came in to us as an Asterisk
>lock-up. The "core show locks" shows a ton of threads locked up (but no
>obvious deadlock). Upon deeper investigation, when the system is in this
>state, the CPU was maxed out. The CPU was being consumed by the Asterisk
>logger spewing messages on every audio frame for calls set up after transcoder
>capacity was reached.
>
>The purpose of this patch is to make Asterisk handle failures to create a
>translation path in a more graceful manner. If we can't translate, then the
>call just needs to be dropped, as it's not going to work. These are the
>changes:
>
>1) In set_format() of channel.c (which is called by set_read_format() and
>set_write_format()), it was ignoring if ast_translator_build_path() failed and
>returned NULL. It now pays attention to that case and returns a result
>reflecting failure. With this change in place, the bridging code will
>immediately detect a failure and end the bridge instead of proceeding to try to
>bridge frames that can't be translated and making channel drivers freak out by
>sending them frames in a format they weren't expecting.
>
>2) In ast_indicate_data() of channel.c, failure of ast_playtones_start() was
>ignored. It is now reflected in the return value of the function. This didn't
>turn out to have any affect on the bug, but seemed like a good change to leave
>in.
>
>3) In app_dial(), when only sending a call to a single endpoint, it will
>attempt to do some bridging of its own of early audio. It uses
>make_compatible() when it's going to do this. However, it ignored failure from
>make compatible. So, even with the fix from #1, if there was early audio going
>through app_dial, there would still be a period of invalid frames passing
>through. After detecting failure here, Dial() exits.
>
>ABE-2658
>
--------------
Tests
--------------
New Test Failures (7)
- AsteriskTestSuite: Cdr/console fork after busy forward
- AsteriskTestSuite: Cdr/console dial sip busy
- AsteriskTestSuite: Cdr/console dial sip answer
- AsteriskTestSuite: Cdr/console dial sip transfer
- AsteriskTestSuite: Mixmonitor
- AsteriskTestSuite: One-step-parking
- AsteriskTestSuite: Cdr/console fork before dial
--
This message is automatically generated by Atlassian Bamboo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/test-results/attachments/20101124/82c304e8/attachment-0001.htm
More information about the Test-results
mailing list