Files
asterisk/apps
smtcbn be57e60baf 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-01 15:23:18 +00:00
..
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-04-28 16:20:35 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-06-02 16:35:27 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00
2025-01-29 14:17:54 +00:00