[SERVER-47189] Do a safe reconfig to add config term on upgrade to FCV=4.4 Created: 30/Mar/20  Updated: 29/Oct/23  Resolved: 10/Apr/20

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.4.0-rc1

Type: Improvement Priority: Major - P3
Reporter: William Schultz (Inactive) Assignee: William Schultz (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Documented
is documented by DOCS-13610 Investigate changes in SERVER-47189: ... Closed
Related
is related to SERVER-47119 Config term does not get initialized ... Closed
Backwards Compatibility: Fully Compatible
Sprint: Repl 2020-04-20
Participants:

 Description   

When 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.



 Comments   
Comment by Githook User [ 10/Apr/20 ]

Author:

{'name': 'William Schultz', 'email': 'william.schultz@mongodb.com', 'username': 'will62794'}

Message: SERVER-47189 Do a reconfig on upgrade to FCV 4.4 to add a config term
Branch: v4.4
https://github.com/mongodb/mongo/commit/880dd3e91f5b38105d909072d8d036378575d93d

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