[SERVER-42299] Upgrade/downgrade for config.chunks and config.tags Created: 19/Jul/19  Updated: 29/Oct/23  Resolved: 16/Oct/19

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 4.3.1

Type: Task Priority: Major - P3
Reporter: Jack Mulrow Assignee: Jack Mulrow
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-44034 [refine shard key] Remove refineColle... Closed
Documented
is documented by DOCS-13127 Investigate changes in SERVER-42299: ... Closed
Gantt Dependency
has to be done after SERVER-41230 Update FCV constants throughout serve... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2019-10-07, Sharding 2019-10-21
Participants:

 Description   

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-42106 made _id a string representation of an OID to defer upgrade/downgrade work until this ticket
  • 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.



 Comments   
Comment by Githook User [ 16/Oct/19 ]

Author:

{'username': 'jsmulrow', 'email': 'jack.mulrow@mongodb.com', 'name': 'Jack Mulrow'}

Message: SERVER-42299 Batch chunk and tag upgrade/downgrade modification transactions
Branch: master
https://github.com/mongodb/mongo/commit/71fd21e91f9f7da71ddfd25fc3c021760e04953b

Comment by Githook User [ 15/Oct/19 ]

Author:

{'name': 'Jack Mulrow', 'username': 'jsmulrow', 'email': 'jack.mulrow@mongodb.com'}

Message: SERVER-42299 Upgrade/downgrade for config.chunks and config.tags
Branch: master
https://github.com/mongodb/mongo/commit/c2af35bc34c6ee187f05246cd8eefcac42fc01c9

Generated at Thu Feb 08 05:00:07 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.