Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-45912

rollback_fuzzer_unclean_shutdowns can fail after restarting a node during rollback

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.3.4
    • Affects Version/s: None
    • Component/s: Replication
    • Labels:
      None
    • Fully Compatible
    • ALL
    • 29

      The following race can occasionally occur:

      1. rollback_fuzzer_unclean_shutdowns starts a 3-node set
      2. it causes Node 1 to enter rollback
      3. Node 1 increments its Rollback ID
      4. the test restarts Node 1 before it can truncate its oplog
      5. Node 1 restarts, it's still on the wrong branch of history, so it enters rollback again
      6. Node 1 increments its RBID again
      7. 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.

            Assignee:
            jesse@mongodb.com A. Jesse Jiryu Davis
            Reporter:
            jesse@mongodb.com A. Jesse Jiryu Davis
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: