-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
2
-
🟥 DDL
-
None
-
None
-
None
-
None
-
None
-
None
ConvertToCappedCoordinator has _mustAlwaysMakeProgress() returning false during phases where critical section is already held. If a non-retriable error occurs in these phases AND cleanup fails before persisting the abort reason, the coordinator gives up without cleaning up, leaving critical sections held indefinitely.
Failure scenario
- Coordinator acquires critical section at kAcquireCriticalSectionOnCoordinator.
- Failure occurs at a later phase where _mustAlwaysMakeProgress() is still false.
- triggerCleanup is called but fails before persisting the abort reason.
- Coordinator gives up (no retry because _mustAlwaysMakeProgress() is false).
- Critical section remains held, blocking CRUD operations indefinitely.
Â
- related to
-
SERVER-117613 CreateCollectionCoordinator may exit without proper cleanup leaving the critical section held
-
- Open
-
-
SERVER-117615 Investigate if RefineCollectionShardKeyCoordinator may exit without proper cleanup leaving migrations frozen
-
- Open
-