[asterisk-bugs] [Asterisk 0011730]: Multiple deadlock / show channels freeze on Queues 1.4.16/17

noreply at bugs.digium.com noreply at bugs.digium.com
Thu Jan 10 10:20:48 CST 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=11730 
====================================================================== 
Reported By:                UDI-Doug
Assigned To:                putnopvut
====================================================================== 
Project:                    Asterisk
Issue ID:                   11730
Category:                   Channels/chan_agent
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
Asterisk Version:           1.4.17 
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             01-10-2008 08:51 CST
Last Modified:              01-10-2008 10:20 CST
====================================================================== 
Summary:                    Multiple deadlock / show channels freeze on Queues
1.4.16/17
Description: 
Hi all

I have a deadlock bug on queues that will happen 2-3 times daily, where
there will be a call the gets stuck in the queue and will not hangup untill
restart of Asterisk. When this occurs if we use the "show channels" command
the CLI will freeze but we are able to logout and back in to get the CLI
running again. If left to long there will be problems with Agent state
reporting and some agents will not recive calls unless they log out and in
again (where their state is reset) or we reload the queue app. We cannot
see the ZAP channel due to the "show channels" freezing CLI and the same
will happen using tab with "soft hangup". I am able to see the ZAP channel
in the queue and have tried "core destroy channel" with no success, this
will kill the ZAP channel but leave the Queued call. The only way that we
can clear the lock is a full restart of Asterisk. Below please find the CLI
outputs and attached the Thread Debug info on the lock. 
====================================================================== 

---------------------------------------------------------------------- 
 putnopvut - 01-10-08 10:20  
---------------------------------------------------------------------- 
I am willing to tentatively state that this and 11712 are actually
different deadlocks.

This deadlock appears to be a classic case of lock order being incorrect,
If you check thread ID's 95910816 and 72723360 in 6min_after_lock.rtf,
you'll see that each is holding the lock that the other is trying to
obtain, and a cursory look at the output seems to indicate that the problem
has to do with local channels. I'll investigate this further and give more
detailed information about it later.

11712 on the other hand, appears to be a problem where a lock is never
released in chan_sip for some reason. What's interesting about it is that
the problem there is actually an infinite loop (due to locking issues
though). I'll add a more detailed note to that issue explaining the
problem. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
01-10-08 10:20  putnopvut      Note Added: 0076667                          
======================================================================




More information about the asterisk-bugs mailing list