[SERVER-54829] Stepdown can interrupt setFCV before reconfig completes Created: 26/Feb/21  Updated: 29/Oct/23  Resolved: 08/Apr/21

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.9.0-rc1, 5.0.0-rc0

Type: Bug Priority: Major - P3
Reporter: Samyukta Lanka Assignee: Pavithra Vetriselvan
Resolution: Fixed Votes: 0
Labels: sharding-csrs-stepdown-only
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Related
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v4.9
Sprint: Repl 2021-03-08, Repl 2021-03-22, Repl 2021-04-05, Repl 2021-04-19
Participants:
Linked BF Score: 129

 Description   

When setting the FCV to 4.4 from 4.9, we first update to the FCV document, which sets the targetVersion to 4.4. Before we complete the reconfig to change `secondaryDelaySecs` back to `slaveDelay` in the replica set config, stepdown can interrupt the setFCV command. This means that the FCV is effectively 4.4, but the replica set config contains `secondaryDelaySecs` instead of `slaveDelay`. If the node steps back up again (or another node that also has FCV set to 4.4 steps up), then the associated reconfig will fassert because the config is invalid.



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

Author:

{'name': 'Pavi Vetriselvan', 'email': 'pavithra.vetriselvan@mongodb.com', 'username': 'pvselvan'}

Message: SERVER-54829 Avoid crashing during kUpgrading/kDowngrading state if config has incompatible field name

(cherry picked from commit f1ac83b03c330d1ef59dd13e55aeddf3c6d41b4b)
Branch: v4.9
https://github.com/mongodb/mongo/commit/e71e821acd084d3010b59bb65a2d82ef7a7fdba4

Comment by Githook User [ 20/Apr/21 ]

Author:

{'name': 'Pavi Vetriselvan', 'email': 'pavithra.vetriselvan@mongodb.com', 'username': 'pvselvan'}

Message: SERVER-54829 consolidate validateConfigForReconfig paths into a single one

(cherry picked from commit f3a6c48b49f8c66d2442bc6e5061129b00b85fef)
Branch: v4.9
https://github.com/mongodb/mongo/commit/be75f9d33d8cb3c258fbd375a3fb1861dd9af93c

Comment by Githook User [ 08/Apr/21 ]

Author:

{'name': 'Pavi Vetriselvan', 'email': 'pavithra.vetriselvan@mongodb.com', 'username': 'pvselvan'}

Message: SERVER-54829 Avoid crashing during kUpgrading/kDowngrading state if config has incompatible field name
Branch: master
https://github.com/mongodb/mongo/commit/f1ac83b03c330d1ef59dd13e55aeddf3c6d41b4b

Comment by Githook User [ 02/Apr/21 ]

Author:

{'name': 'Pavi Vetriselvan', 'email': 'pavithra.vetriselvan@mongodb.com', 'username': 'pvselvan'}

Message: SERVER-54829 consolidate validateConfigForReconfig paths into a single one
Branch: master
https://github.com/mongodb/mongo/commit/f3a6c48b49f8c66d2442bc6e5061129b00b85fef

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