Functions for running commands against the local host.
This namespace presents an API similar to that of the jepsen.control
namespace with the behavioral difference being these functions run commands
against the local host (via bash) rather than the remote host (via bash over
the node's SSH connection).
Functions for running commands against the local host. This namespace presents an API similar to that of the `jepsen.control` namespace with the behavioral difference being these functions run commands against the local host (via bash) rather than the remote host (via bash over the node's SSH connection).
Functions for starting and stopping MongoDB deployments.
Functions for starting and stopping MongoDB deployments.
Client, generator, and checker for verifying data consistency across all members of a replica set by using the 'dbHash' command.
Client, generator, and checker for verifying data consistency across all members of a replica set by using the 'dbHash' command.
Utility functions for initializing and finalizing a MongoDB database's environment.
Utility functions for initializing and finalizing a MongoDB database's environment.
Compare-and-set against a single document.
Compare-and-set against a single document.
Functions for messing with time and clocks.
Functions for messing with time and clocks.
MongoDB java driver adapter
MongoDB java driver adapter
MongoDB specific controls for network manipulation.
MongoDB specific controls for network manipulation.
Read Concern Majority Test.
OVERVIEW:
readConcern majority should provide the guarantee that any data returned is the result of committed operations, i.e. operations that are present on a majority of the nodes in the replica set, and therefore should never be rolled back. To check this, we verify the following property, which should hold given the restriction that we consider only document insert operations; no updates or deletes.
If R is a readConcern majority read that occurs at time T (from the perspective of a fixed client) and reads the set of documents D from a collection C, then any read R' that occurs at time T’ >= T, should read a set of documents D' such that D is a subset of D', i.e. every document that exists in D should exist in D'.
TEST SETUP:
In order to check the above property, this test continually inserts unique documents, on potentially many writer threads, while a single thread periodically reads the full state of the collection. When the test completes, we verify that the set of documents returned by every read R is a subset of the documents returned by the subsequent read, R'. Note that 'subsequent' in this context has a well defined meaning since reads occur within a single thread of execution.
e.g.
Reader/Writer Threads:
Writer-1 –––––––––––––––––––––––––––––––––––––> Writer-2 ––––––––––––––––––––––––––––––––––––––> Writer-3 –––––––––––––––––––––––––––––––––––––> . . . Writer-N ––––––––––––––––––––––––––––––––––––––> Reader –––––––R–––––––––R–––––––––R–––––––––R–––>
Read Concern Majority Test. OVERVIEW: readConcern majority should provide the guarantee that any data returned is the result of committed operations, i.e. operations that are present on a majority of the nodes in the replica set, and therefore should never be rolled back. To check this, we verify the following property, which should hold given the restriction that we consider only document insert operations; no updates or deletes. If R is a readConcern majority read that occurs at time T (from the perspective of a fixed client) and reads the set of documents D from a collection C, then any read R' that occurs at time T’ >= T, should read a set of documents D' such that D is a subset of D', i.e. every document that exists in D should exist in D'. TEST SETUP: In order to check the above property, this test continually inserts unique documents, on potentially many writer threads, while a single thread periodically reads the full state of the collection. When the test completes, we verify that the set of documents returned by every read R is a subset of the documents returned by the subsequent read, R'. Note that 'subsequent' in this context has a well defined meaning since reads occur within a single thread of execution. e.g. Reader/Writer Threads: * = insert operation R = read operation Writer-1 ––*––––––––––*––––––––––*–––––*––––––––––> Writer-2 –––––––*––––––––––––*–––––––––––––*––––––> Writer-3 ––*–––––––––*––––––––––––––*––––––––*––––> . . . Writer-N ––––––––––*––––––––––*––––––––––––*––––––> Reader –––––––R–––––––––R–––––––––R–––––––––R–––>
Runs the full Mongo test suite, including a config file. Provides exit status reporting.
Runs the full Mongo test suite, including a config file. Provides exit status reporting.
A big ol set test: lots of inserts, followed by a final read.
A big ol set test: lots of inserts, followed by a final read.
MongoDB tests against a sharded cluster. Including sets, CAS register,and causal register.
MongoDB tests against a sharded cluster. Including sets, CAS register,and causal register.
Controls time and clocks.
Controls time and clocks.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close