Files
asterisk/apps
smtcbn 2a64ca82e6 app_queue: fix double increment of member->calls with shared_lastcall
Under high concurrency, update_queue() may be invoked multiple times
for the same call, causing member->calls and queue-level counters to
be incremented more than once.

The existing starttime check is not atomic and allows concurrent
execution paths to pass. Treat member->starttime as a single-use token
and consume it via CAS to ensure the call is counted exactly once.

This also prevents incorrect call distribution when using strategies
such as fewestcalls.

Observed as a regression after upgrading to 20.17.

Resolves: #1736
2026-06-04 13:04:20 +00:00
..
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-05-01 12:39:48 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-09-17 14:03:00 -06:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00
2025-03-20 18:18:28 +00:00