[asterisk-bugs] [Asterisk 0013136]: sip peer qualified failed, asterisk lock.

Asterisk Bug Tracker noreply at bugs.digium.com
Mon Jul 28 16:46:00 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13136 
====================================================================== 
Reported By:                pabelanger
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13136
Category:                   Channels/chan_sip/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.0-beta9 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-07-23 02:32 CDT
Last Modified:              2008-07-28 16:46 CDT
====================================================================== 
Summary:                    sip peer qualified failed, asterisk lock.
Description: 
We just had asterisk lock on us tonight.  Best we can guess is because we
lost our SIP PEER (via qualify).

See output from 'show core locks'.
====================================================================== 

---------------------------------------------------------------------- 
 (0090784) putnopvut (administrator) - 2008-07-28 16:46
 http://bugs.digium.com/view.php?id=13136#c90784 
---------------------------------------------------------------------- 
I took a look at the backtrace, and it appears as though you've pretty much
hit the nail on the head with your analysis. If you check thread 2 in the
backtrace, it's clear that Asterisk is blocking on a call to connect(3).

Asterisk has sent a TCP SYN to the far end and is blocking until it
receives a SYN/ACK in return. Unfortunately, if the peer is unreachable,
Asterisk will wait forever. Unfortunately, this also means that *no* SIP
processing is possible since the monlock is currently held by this thread.

I haven't looked too closely at the code in question, but I have a
suspicion of what is happening. I think that Asterisk detects that the peer
in question is unreachable, and so the TCP connection is torn down. Then,
when Asterisk attempts to re-connect so it can send another OPTIONS request
(to see if the peer is now reachable) it can never connect in the first
place.

I will look further in-depth to see if my analysis is correct. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-07-28 16:46 putnopvut      Note Added: 0090784                          
======================================================================




More information about the asterisk-bugs mailing list