[asterisk-dev] [Code Review] Make sure the member count is correct after a reload

Terry Wilson reviewboard at asterisk.org
Mon Oct 24 17:19:30 CDT 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1541/
-----------------------------------------------------------

Review request for Asterisk Developers.


Summary
-------

With the situation:
queues.conf
[test]
strategy=ringall
member => Local/queue1 at default,1
member => Local/queue2 at default,1
member => Local/queue3 at default,1

extensions.conf
[default]
exten => 100,1,Queue(test)
exten => _queueX,1,NoOp(Called ${EXTEN})
same => n,Ringing
same => n,Wait(5)
same => n,Hangup

Dialing 100 will ring all queue members. Changing the penalty of two of the members and doing a 'module reload app_queue.so' and redialing would still ring all of the members on the first try instead of just the lowest penalty member. This was because a reload would set the membercount to 0 and then only increase the membercount for *new* members and not reloaded members. Then, since the penaltymemberlimit = 0 and the membercount = 0, we ignored the penalties and would dial all members.  This patch increases the member count for both reloaded and added members since we set the member count to zero on reloads anyway.


Diffs
-----

  /branches/1.8/apps/app_queue.c 342060 

Diff: https://reviewboard.asterisk.org/r/1541/diff


Testing
-------

Fixes the above scenario.


Thanks,

Terry

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20111024/49bb462a/attachment.htm>


More information about the asterisk-dev mailing list