[SERVER-55376] Reconfig can roll back committed writes in PSA sets Created: 19/Mar/21  Updated: 29/Oct/23  Resolved: 12/May/21

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

Type: Bug Priority: Major - P3
Reporter: Judah Schvimer Assignee: Xuerui Fa
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
depends on SERVER-60217 [v5.0] enableReconfigRollbackCommitte... Closed
is depended on by SERVER-56670 Ensure reconfig cannot roll back comm... Closed
Documented
is documented by DOCS-14446 Investigate changes in SERVER-55376: ... Closed
Related
related to MONGOSH-891 Add check for PSA set in reconfigForP... Open
related to MONGOSH-702 Create a shell helper to reconfig fro... Closed
related to SERVER-56801 Update placeholder links for the reco... Closed
related to SERVER-56919 Add validation for memberIndex to rec... Closed
is related to SERVER-56481 Update TLA+ spec for reconfig to mode... Open
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v4.4
Sprint: Repl 2021-04-05, Repl 2021-04-19, Repl 2021-05-17
Participants:

 Description   
  1. Consider a PSA set in config C0.
  2. We then reconfig to C1 where the "S" node has votes:0.
  3. The "S" node goes down and falls behind as the Primary accepts and commits many writes.
  4. The "S" node restarts.
  5. Now the DBA reconfigures the "S" node to have votes:1 again in C2.
  6. The "S" node gets elected with the arbiter's vote, but without all of the writes the original primary committed while "S" was down.


 Comments   
Comment by Githook User [ 17/Nov/21 ]

Author:

{'name': 'XueruiFa', 'email': 'xuerui.fa@mongodb.com', 'username': 'XueruiFa'}

Message: SERVER-55376: Ensure reconfig cannot roll back committed writes in PSA sets

(cherry picked from commit b5261275423215d567599f3d9862416f09e05aa2)
Branch: v4.4
https://github.com/mongodb/mongo/commit/78925b6e570e2df349fe52c04d2f062c58bc7ba8

Comment by Githook User [ 24/Sep/21 ]

Author:

{'name': 'Vishnu Kaushik', 'email': 'vishnu.kaushik@mongodb.com', 'username': 'kauboy26'}

Message: Revert "SERVER-55376: Ensure reconfig cannot roll back committed writes in PSA sets"

This reverts commit 25d41df0440ea5bc136f255f980816f506c0d72a.
Branch: v4.4
https://github.com/mongodb/mongo/commit/2f1d6f958ab17dc3fdc078883883674f111873f5

Comment by Githook User [ 22/Sep/21 ]

Author:

{'name': 'XueruiFa', 'email': 'xuerui.fa@mongodb.com', 'username': 'XueruiFa'}

Message: SERVER-55376: Ensure reconfig cannot roll back committed writes in PSA sets

(cherry picked from commit b5261275423215d567599f3d9862416f09e05aa2)
Branch: v4.4
https://github.com/mongodb/mongo/commit/25d41df0440ea5bc136f255f980816f506c0d72a

Comment by Githook User [ 12/May/21 ]

Author:

{'name': 'XueruiFa', 'email': 'xuerui.fa@mongodb.com', 'username': 'XueruiFa'}

Message: SERVER-55376: Ensure reconfig cannot roll back committed writes in PSA sets
Branch: master
https://github.com/mongodb/mongo/commit/b5261275423215d567599f3d9862416f09e05aa2

Comment by Samyukta Lanka [ 29/Apr/21 ]

I've filed SERVER-56481 to separately track the work to update the TLA+ spec.

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