-
Type: New Feature
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Service arch 2020-07-13, Service Arch 2020-07-27, Service Arch 2020-08-10, Service Arch 2020-08-24, Service arch 2020-09-07, Service arch 2020-10-05, Service arch 2020-11-02, Service arch 2020-11-16
-
0
For certain Command implementations, notably awaitable isMaster, there is the potential to join an asynchronous queue. We should add some new functions to the Command* API. To allow for asynchronous functions to activate hooks, we need a new helper ala CommandHelpers::runCommand() and a new version of CommandInvocation::run(). The async CommandInvocation::run() should default to running the sync implementation on some persistent executor. There is some real work here in terms of designing a reliable API.
This ticket also involves attaching this API to the command path.
- causes
-
SERVER-52714 Fix the lifetime of ImpersonationSessionGuard in ExecCommandDatabase
- Closed
- depends on
-
SERVER-46653 Guard return path from ServiceEntryPoint to prevent undefined behavior
- Open
- has to be done after
-
SERVER-50346 Simplify exception handling in ServiceEntryPoint::handleRequest
- Closed
- is depended on by
-
SERVER-49108 Convert buildInfo command to async implementation
- Closed
- is related to
-
SERVER-52663 Fix the lifetime of ScopedMetricsCollector in ExecCommandDatabase
- Closed