bneradt commented on PR #13487:
URL: https://github.com/apache/trafficserver/pull/13487#issuecomment-5198294737

   @JosiahWI Good question. I walked the two paths again and agree the removal 
deserves an explicit explanation. The old post-assignment clear was already 
ineffective: after `pending_action = adjust_thread(...)`, `pending_action` is 
either `nullptr` or the fresh reschedule event, never `data`. In the first case 
there is nothing to clear; in the second we return immediately and must retain 
the reschedule event so it can be cancelled if the transaction tears down. If 
`_ua.get_txn()` is false, the hoisted clear handles `data` before the branch. 
Leaving both calls would therefore be harmless but redundant. The PR 
description sentence about a genuine reschedule installing the new event was 
intended to cover this, but this is the fuller reasoning.
   
   @cmcfarlen I stress-tested the timing window after a fresh Debug build and 
install in the ATS build container. The focused AuTest passed once, then passed 
20/20 consecutive repetitions (21/21 local total). The current PR CI run is 
also green across all four AuTest shards. The 3s writer delay gives 2.8s 
between the contender start and release of the write lock, and as you noted, 
the required log assertions turn a missed window into a failure. Based on those 
results, I think 3s is comfortable.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to