[Home]

Summary:ASTERISK-20390: chan_local queue members broken by r372050
Reporter:Tim Ringenbach at Asteria Solutions Group (tim_ringenbach)Labels:
Date Opened:2012-09-07 13:07:49Date Closed:2012-09-27 06:35:00
Priority:MajorRegression?Yes
Status:Closed/CompleteComponents:Applications/app_queue
Versions:11.0.0-beta1 Frequency of
Occurrence
Constant
Related
Issues:
must be completed before resolvingASTERISK-20410 Asterisk 1.8.17.0 Blockers
must be completed before resolvingASTERISK-20411 Asterisk 10.9.0 Blockers
causesASTERISK-20769 Memory leak of local_pvt in chan_local.
Environment:Attachments:
Description:r372050 breaks chan_local queue members.
It's also missing a new line in a call to ast_verb, which makes me think it needed more testing overall.

Here's the relevant (but not full) output:

show queue Sales
Sales has 0 calls (max unlimited) in 'rrmemory' strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0% within 0s
  Members:
     Local/4@agent_queue/n with penalty 1 (ringinuse disabled) (dynamic) (Not in use) has taken no calls yet
  No Callers


channel originate Local/7002@all_calls/n application MusicOnHold
   -- Executing [s@macro-cr-queue:13] Queue("Local/7002@all_calls-0733;2", "Sales,t,,,60") in new stack


   -- Started music on hold, class 'default', on Local/7002@all_calls-0733;2
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n
   -- Stopped music on hold on Local/7002@all_calls-0733;2
   -- <Local/7002@all_calls-0733;2> Playing 'queue-youarenext.gsm' (language 'en')
   -- Told Local/7002@all_calls-0733;2 in Sales their queue position (which was 1)
   -- <Local/7002@all_calls-0733;2> Playing 'queue-thankyou.gsm' (language 'en')
   -- Started music on hold, class 'default', on Local/7002@all_calls-0733;2
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n
Member Local/4@agent_queue/n is busy, cannot dial�    -- Couldn't call Local/4@agent_queue/n


This is a test box, and there were no calls up on the system beside the one I originated.
Comments:By: Tim Ringenbach at Asteria Solutions Group (tim_ringenbach) 2012-09-07 13:17:17.701-0500

And I can confirm that after running this command "svn merge -c -372051 http://svn.asterisk.org/svn/asterisk/trunk" on a checkout of trunk on r372608 (the merge command reverts revision 372051), my agent did get rang and things did work how I expected.

By: Tim Ringenbach at Asteria Solutions Group (tim_ringenbach) 2012-09-07 13:28:29.373-0500

The specific problem is on line app_queue.c:3437 we call ast_request. Once we create the channel, chan_local considers the device in use.