[asterisk-dev] tilghman: branch 1.6.0 r244072 - in /branches/1.6.0: ./ channels/ main/

Russell Bryant russell at digium.com
Mon Feb 1 17:06:04 CST 2010


On 02/01/2010 04:47 PM, Tilghman Lesher wrote:
> On Monday 01 February 2010 16:15:32 Russell Bryant wrote:
>> On 02/01/2010 02:02 PM, Tilghman Lesher wrote:
>>> Well, yes, it will, but the error wasn't entirely removed, either.  Atis
>>> remarked on this and suggested yet another exception to the rule.  This
>>> tends to suggest that with so many exceptions, the previous approach
>>> wasn't the right way to do this.  With the patch above, the error may
>>> still occur, but it will only occur once in a brief while, not
>>> constantly, once the limit has been reached.

This commit closed out the bug, though.  I do not consider it closed as 
you have reintroduced another problem.  Even if the message is not as 
frequent, it is still a problem, the warning will freak people out, and 
we _will_ get bug reports.

>> What was the additional exception proposed to be added?  For reference,
>> this is what we previously had this in chan_local:
>>
>> if (other->pbx || other->_bridge || !ast_strlen_zero(other->appl)) {
>>           ast_queue_frame(other, f);
>> }

> [19:14:04]<atis_home>  Corydon76-dig: btw, i'm still seeing "Exceptionally
> long voice queue" on Local channels with your patches to chan_local :p

> [08:31:06]<atis_work>  so, there's one more situation when other->appl is
> zero, but control frames need to be forwarded
> [08:31:29]<atis_work>  if Originating Local/123/n and Context/Exten/Priority

> [08:34:36]<Corydon76-dig>  It just seems like we keep piling on the
> exceptions, and it's therefore clear that that wasn't the right approach

Based on this discussion, I do not agree with the patch committed.  The 
code that was in chan_local already accounted for this situation.  In 
this situation, both sides of a Local channel will have a non-NULL pbx 
on the ast_channel.  So, something else is going on and we should figure 
out what it is.

Take for example:

*CLI> originate Local/123 at foo extension 456 at bar

Here is what you have connected.  Both sides are running a PBX.

(Some app) <-->
    PBX <-->
       [Local/123 at foo,1] <-->
          [Local/123 at foo,2] <-->
             PBX <-->
                (Some app)

-- 
Russell Bryant
Digium, Inc. | Engineering Manager, Open Source Software
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
www.digium.com -=- www.asterisk.org -=- blogs.asterisk.org



More information about the asterisk-dev mailing list