-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Internal Code
-
Fully Compatible
-
v5.0
-
Sharding 2020-11-16, Sharding 2020-11-30
-
0
Use CancelationTokens for PrimaryOnlyService to help with the cancelation of running instances.
There are three aspects of this:
- Make PrimaryOnlyService and instances own a CancelationSource, and pass tokens from the source to the Instance::run function
- Remove the usage of ScopedTaskExecutor in favor of using the base executor and CancelationToken-accepting functions on TaskExecutor (SERVER-52750)
- Remove the interrupt() function from PrimaryOnlyService::Instance and use CancelationToken cancelation to handle interruptions instead (SERVER-52751)
This ticket tracks the first bullet point.
- is depended on by
-
SERVER-52750 Remove the usage of ScopedTaskExecutor from PrimaryOnlyService in favor of using the base executor and CancelationToken-accepting functions on TaskExecutor
- Backlog
-
SERVER-52751 Remove the interrupt() function from PrimaryOnlyService::Instance and use CancelationToken cancelation to handle interruptions instead
- Backlog
- is related to
-
SERVER-51017 Add unittest for PrimaryOnlyService::Instance::interrupt
- Closed
- related to
-
SERVER-55657 Improve interruption of PrimaryOnlyService instances
- Backlog
-
SERVER-51179 TenantMigrationDonorInstance should distinguish local and remote shutdown/stepdown errors
- Closed