smtcbn
209f8f012e
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:26 +00:00
..
2025-04-28 16:30:09 +00:00
2025-09-11 15:25:41 +00:00
2025-07-30 14:21:45 +00:00
2025-01-29 14:18:25 +00:00
2026-01-22 21:00:39 +00:00
2025-01-29 14:18:25 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-08-18 14:19:22 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2026-05-12 16:31:20 +00:00
2025-01-29 14:18:25 +00:00
2025-12-01 14:01:03 +00:00
2025-07-10 14:47:38 +00:00
2025-11-17 18:35:56 +00:00
2025-11-12 22:20:45 +00:00
2025-01-29 14:18:25 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2026-02-25 13:25:21 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-04-28 16:30:09 +00:00
2025-04-28 19:13:58 +00:00
2025-01-23 18:11:58 +00:00
2025-01-29 14:18:25 +00:00
2026-02-25 13:25:21 +00:00
2025-12-30 15:09:00 +00:00
2025-04-28 16:30:09 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2026-02-18 13:43:42 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2026-06-01 15:23:26 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2026-02-18 13:43:42 +00:00
2025-11-19 17:19:56 +00:00
2025-04-28 16:30:09 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-10-06 19:24:57 +00:00
2025-01-29 14:18:25 +00:00
2025-04-28 16:30:09 +00:00
2025-04-28 16:30:09 +00:00
2025-06-12 12:18:56 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-03-18 15:12:08 +00:00
2026-04-22 18:05:08 +00:00
2025-06-02 16:35:34 +00:00
2025-01-29 14:18:25 +00:00
2025-12-03 13:58:50 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2019-06-28 07:32:03 -06:00
2019-06-28 07:32:03 -06:00
2019-06-28 07:32:03 -06:00
2019-06-28 07:32:03 -06:00
2026-04-28 16:26:33 +00:00
2012-06-15 15:33:41 +00:00
2025-01-23 18:11:58 +00:00
2025-01-29 14:18:25 +00:00
2025-09-08 14:27:32 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2025-01-29 14:18:25 +00:00
2017-12-22 09:23:22 -05:00
2017-12-22 09:23:22 -05:00
2025-05-05 13:44:22 +00:00