It is possible to interrupt a renameCollection from "source" to "target" such that the UUID of "source" is no longer mapped to "source", but nothing at all.
This can cause an invariant when using collMod to access the collection by UUID.
The UUIDCatalog::onRenameCollection observer correctly implements this behavior, but because UUIDCatalog::onCreateCollection is called before the onRenameCollection observer is called, this leaves the UUID catalog in an incorrect state.
- is related to
-
SERVER-35563 The UUIDCatalog onCreateCollection observer should atomically unregister and re-register catalog entries
- Closed
-
SERVER-38469 Allow interrupts in renameCollection
- Closed
-
SERVER-30229 Clean up UUIDCatalog registration
- Closed