Details
-
Task
-
Resolution: Fixed
-
Major - P3
-
None
Description
Description
This patch disabled chunk migrations, splits, and merges while the setFeatureCompatibilityVersion command is running on the config server primary in a sharded cluster. Running each command during this window will fail with `ConflictingOperationInProgress`.
Description of Linked Ticket
For refine a collection's shard key, the formats of documents in config.chunks and config.tags were changed to allow updating their min boundaries without needing to update their _ids. In particular, _id in config.chunks is no longer a string concatenation of namespace and minbound and _id in config.tags is no longer an object containing namespace and minbound.
As part of this ticket, the server should be changed to:
- Gate the new format on FCV 4.4 and change the BSONField for the ChunkType class to expect _id as an OID
- Note
SERVER-42106made _id a string representation of an OID to defer upgrade/downgrade work until this ticket
- Note
- Upgrade (through setFeatureCompatibilityVersion command) should iterate through each document in config.chunks and config.tags and change their _ids to be in the new format
- Vice versa for downgrade through setFCV
In addition to basic integration testing, add integration coverage to ensure migrations in mixed binary version clusters work and that zone boundaries are respected before and after an upgrade/downgrade.
Scope of changes
Impact to Other Docs
MVP (Work and Date)
Resources (Scope or Design Docs, Invision, etc.)
Attachments
Issue Links
- documents
-
SERVER-42299 Upgrade/downgrade for config.chunks and config.tags
-
- Closed
-
- related to
-
DOCS-12951 Investigate changes in SERVER-42368: Remove max shard key value size limit
-
- Closed
-