-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: 8.3.0, 9.1.0-rc0, 9.0.0
-
Component/s: None
-
None
-
Catalog and Routing
-
ALL
-
3
-
🟥 DDL
-
None
-
None
-
None
-
None
-
None
-
None
The current implementation of ~ShardingCoordinator contains two tasserts. These were invariants before, but were turned into tasserts in SERVER-106445 to avoid crashing too aggressively in DDL coordinators. However, C++ destructors are noexcept by default, so if either tassert ever fires the behavior would be identical to an invariant, because the process would immediately call std::terminate when trying to propagate the exception thrown by the tassert.
- is related to
-
SERVER-131770 Playbook to anticipate & mitigate potential stuck setFCV (8.x → 9.0) during authoritative shard cloning
-
- In Code Review
-
-
SERVER-106445 Add C++ linter to prevent invariant usage in DDL coordinators and change all of them to tasserts
-
- Closed
-