[Home]

Summary:ASTERISK-29155: app_queue: Deadlock between queues container and individual queues
Reporter:George Joseph (gjoseph)Labels:
Date Opened:2020-11-11 08:48:13.000-0600Date Closed:2020-11-12 16:18:40.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:Applications/app_queue
Versions:13.37.1 16.14.1 17.8.1 18.0.1 Frequency of
Occurrence
Related
Issues:
duplicatesASTERISK-22976 app_queue function queue_show() and find_queue_by_name_rt() cause deadlock
is related toASTERISK-28708 app_queue: Deadlock with "queue show" and "shared_lastcall" option
Environment:Attachments:
Description:Operations that update queues when shared_lastcall is set lock the queue in question, then have to lock the queues container to find the other queues with the same member.   On the other hand, __queues_show (which is called by both the CLI and AMI) does the reverse.  It locks the queues container, then iterates over the queues locking each in turn to display them.

Deadlock.
Comments:By: Friendly Automation (friendly-automation) 2020-11-12 16:18:41.025-0600

Change 15159 merged by Kevin Harwell:
app_queue: Fix deadlock between update and show queues

[https://gerrit.asterisk.org/c/asterisk/+/15159|https://gerrit.asterisk.org/c/asterisk/+/15159]

By: Friendly Automation (friendly-automation) 2020-11-12 16:19:08.552-0600

Change 15172 merged by Kevin Harwell:
app_queue: Fix deadlock between update and show queues

[https://gerrit.asterisk.org/c/asterisk/+/15172|https://gerrit.asterisk.org/c/asterisk/+/15172]

By: Friendly Automation (friendly-automation) 2020-11-12 16:19:34.709-0600

Change 15158 merged by Kevin Harwell:
app_queue: Fix deadlock between update and show queues

[https://gerrit.asterisk.org/c/asterisk/+/15158|https://gerrit.asterisk.org/c/asterisk/+/15158]