-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Internal Code
-
None
-
Service Arch
-
Fully Compatible
-
Service Arch 2024-02-19, Service Arch 2024-03-04, Service Arch 2024-03-18
The command processing path is blocking today: each user operation is assigned a thread that it will use to complete the operation. As a result, using shared pointers to reference any state that doesn't outlive an operation (e.g. ExecutionContext) is not necessary, and will introduce performance overhead on the hot path (e.g. the cost of heap allocation and ref-counting the shared object).
The idea is to remove these shared pointers from the command path to save on the cost and simplify the code.
- depends on
-
SERVER-82831 De-futurize the command path
- Closed