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

Add FSM-based concurrency tests to parallel suite

    • Fully Compatible

      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

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

              Created:
              Updated:
              Resolved: