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

Add FSM-based concurrency tests to parallel suite

    XMLWordPrintable

Details

    • Fully Compatible

    Description

      v8_utils.cpp and parallelTester.js were modified to expose a CountDownLatch to the mongo shell. This is used to synchronize when all of the worker threads are started. It is only intended to be used for testing.

      runner.js contains the logic to setup the cluster and each of the workloads.

      fsm.js will run a single workload by following its probabilistic transition table for a set number of iterations.

      compose.js represents one way to combine multiple workloads. With some probability, the thread will transition between states of different workloads.

      assert.js wraps the existing assert function calls to not throw an error when certain conditions about who owns the db/collection are not met. This makes it possible to run workloads together without losing the ability to make any assertions.

      Workloads written for:

      • findAndModify
      • indexed inserts
      • bulk update operation
      • update

      Attachments

        Issue Links

          Activity

            People

              daniel.alabi@10gen.com Daniel Alabi
              max.hirschhorn@mongodb.com Max Hirschhorn
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: