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

Improved MDB crash recovery testing

    • Type: Icon: New Feature New Feature
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 5.3.0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Fully Compatible
    • Execution Team 2022-02-07, Execution Team 2022-02-21

      MDB currently has powercycle and process termination tests which have historically discovered durability bugs. It's not obvious those are fundamentally insufficient, but we've found other durability bugs when using other techniques. Specifically we can set up a mongodb cluster and:

      • Run a workload against the cluster
      • SIGSTOP one of the mongodb processes
      • Copy that process' dbpath to a tmp path with direct I/O
      • SIGCONT the paused process
      • Start a mongod on the tmp path
      • Run validate on all collections in the tmp path
      • Repeat in a tight loop.

      There's interest in permanently adding this to our testing suites. Attached is an unrefined (apologies) patch that can be used as a starting point in implementing the above.

            gregory.wlodarek@mongodb.com Gregory Wlodarek
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            0 Vote for this issue
            11 Start watching this issue