[SERVER-39758] double_rollback.js should reliably wait for node 0 to complete rollback Created: 22/Feb/19  Updated: 29/Oct/23  Resolved: 04/Mar/19

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: 3.4.19, 3.6.10
Fix Version/s: 3.4.20, 3.6.12

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

Issue Links:
Backports
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v3.4
Sprint: Repl 2019-03-11
Participants:
Linked BF Score: 10

 Description   

double_rollback.js waits for node 0 to roll back using the following checks:

    jsTestLog("Wait for nodes 0 to roll back and both node 0 and 2 to catch up to node 1");
    waitForState(nodes[0], ReplSetTest.State.SECONDARY);
    waitForState(nodes[2], ReplSetTest.State.SECONDARY);
    rst.awaitReplication();

However, these checks are not reliable on 3.4 and 3.6. The first check can succeed because node 0 was in state SECONDARY prior to entering rollback. The awaitReplication() only checks liveNodes on 3.4 and 3.6, which may not include node 0 if the last call to isMaster failed due to the node closing connections when entering rollback. We require a more reliable way to wait for node 0 to complete rollback.



 Comments   
Comment by Githook User [ 04/Mar/19 ]

Author:

{'name': 'Tess Avitabile', 'email': 'tess.avitabile@mongodb.com', 'username': 'tessavitabile'}

Message: SERVER-39758 double_rollback.js should reliably wait for node 0 to complete rollback

(cherry picked from commit 1c24972a20f0cd5e37bb24648fffb3b1c7409f6f)
Branch: v3.4
https://github.com/mongodb/mongo/commit/bede0e9b7afee4bb30025b1ffc3e22763aec9e93

Comment by Githook User [ 04/Mar/19 ]

Author:

{'name': 'Tess Avitabile', 'username': 'tessavitabile', 'email': 'tess.avitabile@mongodb.com'}

Message: SERVER-39758 double_rollback.js should reliably wait for node 0 to complete rollback
Branch: v3.6
https://github.com/mongodb/mongo/commit/1c24972a20f0cd5e37bb24648fffb3b1c7409f6f

Generated at Thu Feb 08 04:53:01 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.