[SERVER-66620] Refactor _runDowngrade Created: 20/May/22  Updated: 29/Oct/23  Resolved: 05/Aug/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.1.0-rc0

Type: Task Priority: Major - P3
Reporter: Huayu Ouyang Assignee: Evelyn Wu
Resolution: Fixed Votes: 0
Labels: pm-2821-milestone-2, pm-2821-quick-wins
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-67242 Remove isFCVDowngradingOrAlreadyDowng... Closed
is duplicated by SERVER-67276 Clean up runUpgrade/Downgrade functio... Closed
Backwards Compatibility: Fully Compatible
Sprint: Repl 2022-07-11, Repl 2022-08-08, Repl 2022-07-25
Participants:

 Description   

Currently SetFeatureCompatibilityVersionCommand::run and _runDowngrade can be confusing to read and understand where to place any necessary uasserts. We should investigate whether we can refactor _runDowngrade and create new helper functions with comments explaining what the new organizational structure is . For example, one helper function could be where all the user collections clean up uasserts go, another one could be where all the internal server cleanup should go. We should also investigate whether we can have helper functions based on the role/phase of the node (config server vs shard server vs single replica set/standalone).

As part of this we should also audit old branches for what types of things could be done on upgrade/downgrade.


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