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

Shut down mongod nodes in parallel in ReplSetTest

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.3.1
    • Component/s: Replication
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Sprint:
      Repl 2019-11-04, Repl 2019-11-18

      Description

      In the ReplSetTest.stopSet function, we call ReplSetTest.stop sequentially for each node in the replica set. This in turn calls MongoRunner.stopMongod for each replica set node. By default, when MongoRunner shuts down a mongod node, it will call waitpid on the underlying process before continuing. This means that in ReplSetTest.stopSet we need to wait for a mongod to shut down cleanly before moving on and shutting down the next node. We could speed up this process by having a way in MongoRunner to shut down a process without calling waitpid on it. In ReplSetTest, after initiating shutdown on each node (and not blocking), we could go through each process and call waitProgram on its process id, which will call waitpid. This should speed up the shutdown process in ReplSetTest and reduce test times for both local testing and, ideally, overall Evergreen test suite durations.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              william.schultz William Schultz (Inactive)
              Reporter:
              william.schultz William Schultz (Inactive)
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: