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-0600 | Date Closed: | 2020-11-12 16:18:40.000-0600 | ||||
Priority: | Major | Regression? | |||||
Status: | Closed/Complete | Components: | Applications/app_queue | ||||
Versions: | 13.37.1 16.14.1 17.8.1 18.0.1 | Frequency of Occurrence | |||||
Related Issues: |
| ||||||
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] |