-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Sharding EMEA 2023-10-02, Sharding EMEA 2023-10-16
-
153
Currently, we have the following commands/structs:
- create: command invoked to create a collection
- ShardCollection: struct used for the shardCollection command (client->router)
- CreateCollectionRequest: struct used for the _shardsvrCreateCollection command (router->shard)
All of the above commands/structs contain some duplicated fields (with the same meaning and name) and some other fields (not duplicated).
Purpose of this ticket is to:
- Unify the structs used for shardCollection and _shardsvrCreateCollection (if possible, they seem to have the exact same fields)
- Extract a struct containing all fields of the create command
- Chain the new struct to the shardCollection commands (removing duplicates)
This is a step towards having a unique code path for creating/sharding a collection.
- causes
-
SERVER-82877 shardsvrCreateCollection request should have the same field's type as in 7.0 binary
- Closed
- is depended on by
-
SERVER-81189 Transform `create` requests in sharded cluster to `_shardSvrCreateCollection`
- Closed