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

Add FSM-based concurrency tests to parallel suite

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      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

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

                Dates

                Created:
                Updated:
                Resolved: