-
Type: New Feature
-
Resolution: Won't Do
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Workload Scheduling
-
v8.0
-
200
The existing SemaphoreTicketHolder implementation uses timed waits in order to support interruptibility, which risks convoy effects when we have a large number of waiters. SERVER-86461 attempted to alleviate this concern by introducing jitter to the timed waits, but the convoys are still possible. Our waitForConditionOrInterrupt implementation uses a waiter list of Notifyable to support interruptible waits, so we should reuse that same idea in a new TicketHolder implementation which supports interruptibility natively (rather than timed waits).
- related to
-
SERVER-97112 Complete TODO listed in SERVER-89297
- Closed
-
SERVER-96332 Remove timed wakeups from SemaphoreTIcketHolder
- Needs Scheduling