|
The following race can occasionally occur:
- rollback_fuzzer_unclean_shutdowns starts a 3-node set
- it causes Node 1 to enter rollback
- Node 1 increments its Rollback ID
- the test restarts Node 1 before it can truncate its oplog
- Node 1 restarts, it's still on the wrong branch of history, so it enters rollback again
- Node 1 increments its RBID again
- In rollback_test.js, transitionToSteadyStateOperations asserts Node 1's RBID is exactly the test's previous known RBID + 1, but fails because it was incremented twice
The same issue affects code in rollback_test_deluxe, although I don't think that copy of the bug can be triggered in fuzz testing.
|