Details
-
Improvement
-
Resolution: Unresolved
-
Major - P3
-
None
-
None
-
Service Arch
Description
Add a new variant to ThreadPoolTaskExecutor tests, similar to ThreadPoolExecutorCommonTests, that uses a non-synchronized mocked NetworkInterface to allow races to occur in our testing environment.
Existing tests use NetworkInterfaceMockinterface, which synchronizes with the executor threads for deterministic execution of tests:
The thread acting as the "network" and the executor run thread are highly synchronized by this code, allowing for deterministic control of operation interleaving.
This synchronization does not allow data-races to show up in our testing environment, in particular under TSAN variants.
Attachments
Issue Links
- related to
-
SERVER-58310 ThreadPoolTaskExecutor is memory unsafe when task cancellation occurs around the same time an exhaust network response is received
-
- Closed
-