-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Server Programmability
-
Fully Compatible
-
ALL
-
v5.0
-
15
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Commands are invoked as continuations chained via the "thenWithState" future utility; see here. "thenWithState" is noexcept annotated, and invokes the provided continuation inline via makeReadyFutureWith; see here. makeReadyFutureWith catches any DBExceptions thrown by the continuation and converts them to Statuses; see here, but does not catch other (i.e. system/std) exceptions. That means if a non-db exception (i.e. from an STL container or type) is thrown and uncaught anywhere in the command execution process, during stack unwinding it could bubble up to the noexcept-annotated thenWithState, which will result in process termination with minimal diagnostics available.
Acceptance criteria: Investigate how we want to solve this and bring a proposal back to the team.