[asterisk-bugs] [Asterisk 0015609]: [patch] WARNING[23025]: channel.c:952 __ast_queue_frame: Exceptionally long voice queue length queuing to Local
Asterisk Bug Tracker
noreply at bugs.digium.com
Fri Dec 11 10:20:23 CST 2009
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=15609
======================================================================
Reported By: aragon
Assigned To: russell
======================================================================
Project: Asterisk
Issue ID: 15609
Category: Core/Channels
Reproducibility: have not tried
Severity: block
Priority: normal
Status: confirmed
Asterisk Version: SVN
JIRA: SWP-205
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): 1.4
SVN Revision (number only!): 206273
Request Review:
======================================================================
Date Submitted: 2009-07-29 09:26 CDT
Last Modified: 2009-12-11 10:20 CST
======================================================================
Summary: [patch] WARNING[23025]: channel.c:952
__ast_queue_frame: Exceptionally long voice queue length queuing to Local
Description:
Since upgrading to 1.4 SVN 206273 I see LOTS these errors when paging or
when calls are processed by app_queue. When I see the messages during a
page I don't hear any paging (my Polycom phones continue to ring but no
paging audio).
I have no idea where the message is coming from how to reproduce, or
collect debug information for this specific issue. I need help to find
root cause.
I think it could be caused by locking in autoservice since I see this lock
every time I see the warning message
=== Currently Held Locks ==============================================
=======================================================================
===
=== <file> <line num> <function> <lock name> <lock addr> (times locked)
===
=== Thread ID: 3057154960 (autoservice_run started at [ 238]
autoservice.c ast_autoservice_start())
=== ---> Waiting for Lock https://issues.asterisk.org/view.php?id=0
(autoservice.c): MUTEX 89 autoservice_run
&(&aslist)->lock 0x81798c8 (1)
=== --- ---> Locked Here: autoservice.c line 89 (autoservice_run)
=== -------------------------------------------------------------------
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
duplicate of 0015976 abort in filestream_destructor / ast_fi...
related to 0015109 [patch] Abort by memory allocator, poss...
has duplicate 0015900 Console flood & CPU load 100% when ...
has duplicate 0016096 Exceptionally long voice queue length q...
related to 0015817 crash in local_attended_transfer, likel...
related to 0015845 Crash during attended transfer occurs
related to 0015616 random crashes
related to 0016229 ERROR[24164]: utils.c:966 ast_carefulwr...
related to 0016081 [patch] utils.c:938 ast_carefulwrite: T...
======================================================================
----------------------------------------------------------------------
(0115149) aragon (reporter) - 2009-12-11 10:20
https://issues.asterisk.org/view.php?id=15609#c115149
----------------------------------------------------------------------
Holy crap,
I figured out the configuration which causes the warnings during
mysqlcheck etc...
In my queue configuration I have an option to allow the caller to exit the
queue by pressing a digit in an IVR configuration. The IVR context is
included in the queue and a key press will follow rules to transfer the
caller to another destination.
Here is an example configuration (this example actually comes from another
ticket that was opened with a similar but non-related problem).
https://issues.asterisk.org/view.php?id=14536
To reproduce it is easy enough to set "context" commzilla-aa-mainivr"
Where that context is equal to an IVR menu.
The purpose of that menu is to allow a caller to enter DTMF during wait
time to transfer out of queue.
queues.conf
[commzilla-family]
music = default
strategy = rrmemory
servicelevel = 45
context = commzilla-aa-mainivr
timeout = 20
retry = 5
maxlen = 0
weight = 0
reportholdtime = no
reportwaitcall = no
memberdelay = 0
timeoutrestart = no
autofill = yes
autopause = no
ringinuse = no
setinterfacevar = yes
wrapuptime = 0
joinempty = yes
leavewhenempty = no
eventwhencalled = vars
eventmemberstatus = yes
periodic-announce-frequency = 20
periodic-announce = custom/0002
monitor-format = wav49
monitor-type = MixMonitor
queue-youarenext = queue-youarenext
queue-thereare = queue-thereare
queue-callswaiting = queue-callswaiting
queue-holdtime = queue-holdtime
queue-minutes = queue-minutes
queue-seconds = queue-seconds
queue-thankyou = queue-thankyou
queue-lessthan = queue-less-than
extensions-ivr.conf
[commzilla-aa-mainivr]
include => commzilla-local
exten => s,1,Answer
exten => s,2,AGI(/var/www/scopserv/telephony/scripts/agi/ivr.php,3438)
exten => s,3,Wait(1)
exten => s,4,Set(__IVRNAME=commzilla-aa-mainivr)
exten => s,5,Set(TIMEOUT(digit)=3)
exten => s,6,Set(TIMEOUT(response)=5)
exten => s,7,Set(CHANNEL(language)=en)
exten => s,8,Background(custom/0013)
exten => s,9,NoOp()
exten => 0,1,AGI(/var/www/scopserv/telephony/scripts/agi/ivr.php,3438,0)
exten => 0,2,Set(__CALLDIVERT=YES)
exten => 0,3,Dial(Local/200 at commzilla-local/n,,o)
exten => 0,4,Hangup
exten =>
#,1,AGI(/var/www/scopserv/telephony/scripts/agi/ivr.php,3438,pound)
exten => #,2,Directory(commzilla|commzilla-local-directory|)
exten =>
t,1,AGI(/var/www/scopserv/telephony/scripts/agi/ivr.php,3438,none)
exten => t,2,Set(__CALLDIVERT=YES)
exten => t,3,Dial(Local/200 at commzilla-local/n,,o)
exten => t,4,Hangup
exten =>
i,1,AGI(/var/www/scopserv/telephony/scripts/agi/ivr.php,3438,invalid)
exten => i,2,Set(__CALLDIVERT=YES)
exten => i,3,Dial(Local/200 at commzilla-local/n,,o)
exten => i,4,Hangup
exten => h,1,Goto(all-hangup,s,1)
If I remove the context then the warnings no longer appear during
mysqlcheck
Here is that configuration
queues.conf
[commzilla-family]
music = default
strategy = rrmemory
servicelevel = 45
# context = commzilla-aa-mainivr
timeout = 20
retry = 5
maxlen = 0
weight = 0
reportholdtime = no
reportwaitcall = no
memberdelay = 0
timeoutrestart = no
autofill = yes
autopause = no
ringinuse = no
setinterfacevar = yes
wrapuptime = 0
joinempty = yes
leavewhenempty = no
eventwhencalled = vars
eventmemberstatus = yes
periodic-announce-frequency = 20
periodic-announce = custom/0002
monitor-format = wav49
monitor-type = MixMonitor
queue-youarenext = queue-youarenext
queue-thereare = queue-thereare
queue-callswaiting = queue-callswaiting
queue-holdtime = queue-holdtime
queue-minutes = queue-minutes
queue-seconds = queue-seconds
queue-thankyou = queue-thankyou
queue-lessthan = queue-less-than
Issue History
Date Modified Username Field Change
======================================================================
2009-12-11 10:20 aragon Note Added: 0115149
======================================================================
More information about the asterisk-bugs
mailing list