-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
Storage Execution 2026-09-28
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
SERVER-132623 changed AutoGetOplogFastPath to retain an owning std::shared_ptr<const Collection> for the oplog instead of stashing the whole CollectionCatalog snapshot. Stashing the catalog pinned the Ident of every collection in that catalog version, which made a replicated dropIdent fatal on the applier (BF-45073).
However, this is is another unsafe, publicly exposed CollectionCatalog API. Handing out owning{{Collection}} references outside the shard-role acquisition path lets any caller keep collection (and its ident) alive past the catalog version it came from, with no lock and no acquisition to enforce correctness.
- is related to
-
SERVER-132623 Drop collection and drop ident can race with a holder of the catalog
-
- Closed
-