-
Type: Bug
-
Resolution: Duplicate
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Catalog and Routing
-
ALL
Currently createCapped(nss) only runs on unsharded collection which before SERVER-81190 are always on the primary shard.
The command works as follow:
- create a new collection as capped and name it to "temp"
- clone all the data from nss to temp
- rename "temp" to nss with dropTarget=true
All the three operations are running locally on the owning shard.
In case the unsharded collection is an unsplittable collection, the rename causes nss to have a new UUID which is not updated in the CSRS.
The goal of this ticket is to change createCapped to adapt it to the new unsplittable collection.
In case the collection is an unsplittable collection, a quick idea could be:
- change the local createCollection to shardsvrCreateCollection
- Block migrations for the entire cloning phase.
- change the local rename to shardsvrRenameCollection
Additionally, both cloneToCapped and convertToCapped send commands to the dbPrimary, so if the unsplittable collection was moved, it would not work. We need to make sure that the command work on unsplittable collections not located in the primary shard.
- depends on
-
SERVER-84091 cloneCollectionAsCapped command stops working after a replica set is bootstrapped as a sharded cluster
- Closed
-
SERVER-85372 Make cloneCollectionAsCapped work properly in case of concurrent DDLs
- Closed
-
SERVER-80416 Expose cloneCollectionAsCapped command via mongos
- Backlog
- duplicates
-
SERVER-80416 Expose cloneCollectionAsCapped command via mongos
- Backlog
- is depended on by
-
SERVER-86031 Re-enable convertToCapped and cloneCollectionAsCapped in test fuzzer in sharded clusters
- Blocked
- is duplicated by
-
SERVER-85919 Adapt convertToCapped and cloneToCapped command to work with tracked unsharded collection
- Closed
- related to
-
SERVER-86030 Temporarly disable convertToCapped and cloneToCapped in test fuzzer when running against sharded clusters
- Closed
-
SERVER-87782 Complete TODO listed in SERVER-84482
- Closed