[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