Common generators and checkers for linearizability over a set of independent
registers. Clients should understand three functions, for writing a value,
reading a value, and compare-and-setting a value from v to v'. Reads receive
nil, and replace it with the value actually read.
{:type :invoke, :f :write, :value [k v]}
{:type :invoke, :f :read, :value [k nil]}
{:type :invoke, :f :cas, :value [k [v v']]}
Common generators and checkers for linearizability over a set of independent
registers. Clients should understand three functions, for writing a value,
reading a value, and compare-and-setting a value from v to v'. Reads receive
`nil`, and replace it with the value actually read.
{:type :invoke, :f :write, :value [k v]}
{:type :invoke, :f :read, :value [k nil]}
{:type :invoke, :f :cas, :value [k [v v']]}(cas _ _)(r _ _)(test opts)A partial test, including a generator, model, and checker. You'll need to provide a client. Options:
:nodes A set of nodes you're going to operate on. We only care about the count, so we can figure out how many workers to use per key. :per-key-limit Maximum number of ops per key. Default 128.
A partial test, including a generator, model, and checker. You'll need to
provide a client. Options:
:nodes A set of nodes you're going to operate on. We only care
about the count, so we can figure out how many workers
to use per key.
:per-key-limit Maximum number of ops per key. Default 128.(w _ _)cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |