Don't check all realtime queues when doing "queue show some_queue".

When using realtime queues, queues have to be fetched from the database
every now and then to see if any info has been changed or to see if the
queue has been removed. When fetching info for an individual queue, the
pruning of other queues is unnecessarily costly.

Review: https://reviewboard.asterisk.org/r/2907/
........

Merged revisions 401049 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 401076 from http://svn.asterisk.org/svn/asterisk/branches/11


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@401077 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Walter Doekes
2013-10-16 12:12:42 +00:00
parent c76d5392f5
commit ec1c707121

View File

@@ -8842,9 +8842,10 @@ static char *__queues_show(struct mansession *s, int fd, int argc, const char *
ao2_lock(q);
/* This check is to make sure we don't print information for realtime
* queues which have been deleted from realtime but which have not yet
* been deleted from the in-core container
* been deleted from the in-core container. Only do this if we're not
* looking for a specific queue.
*/
if (q->realtime) {
if (argc < 3 && q->realtime) {
realtime_queue = find_load_queue_rt_friendly(q->name);
if (!realtime_queue) {
ao2_unlock(q);