[DOCS-13610] Investigate changes in SERVER-47189: Do a safe reconfig to add config term on upgrade to FCV=4.4 Created: 23/Apr/20 Updated: 13/Nov/23 Due: 01/May/20 Resolved: 08/May/20 |
|
| Status: | Closed |
| Project: | Documentation |
| Component/s: | manual |
| Affects Version/s: | None |
| Fix Version/s: | 4.4.0-rc1, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Backlog - Core Eng Program Management Team | Assignee: | Ravind Kumar (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | docs-replication | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Participants: | |||||||||||||||||
| Days since reply: | 3 years, 39 weeks, 5 days ago | ||||||||||||||||
| Epic Link: | DOCS: 4.4 Server Release Work | ||||||||||||||||
| Description |
DescriptionDownstream Change Summary On upgrade to 4.4 starting from RC1, the primary executes a similar reconfig to add the term field from the on-disk config document and blocks waiting for only a majority of the nodes to replicate the new config. This is sufficient to guarantee the new on-disk format will eventually propagate to all nodes and the next primary must have the new on-disk format. This is an optimization to avoid potential safety issues on the later transition from 4.2-style config to safe reconfig. Description of Linked TicketWhen replica set nodes are in FCV=4.2, their replica set configs have no config "term" field. This is intentional so that the behavior in FCV=4.2 matches the v4.2 reconfig behavior. After upgrading to FCV=4.4, however, replica set nodes will not add a config term until the first safe reconfig is run. This can leave an indefinitely long period of time where nodes will have configs with uninitialized terms, which is unsafe for the reasons illustrated in the trace of this comment. To prevent this unsafe period of time after upgrade, we should do an internal no-op reconfig after upgrading to FCV=4.4 to automatically add config terms, analogous to what we do on FCV downgrade. Scope of changesImpact to Other DocsMVP (Work and Date)Resources (Scope or Design Docs, Invision, etc.) |
| Comments |
| Comment by Githook User [ 08/May/20 ] |
|
Author: {'name': 'rk-mongo', 'email': 'ravind.kumar@mongodb.com', 'username': 'rkumar-mongo'}Message: |