jepsen.tests.cycle.append

Detects cycles in histories where operations are transactions over named lists lists, and operations are either appends or reads. See elle.list-append for docs.

checker

(checker)(checker opts)

Full checker for append and read histories. See elle.list-append for options.

gen

(gen opts)

Wrapper for elle.list-append/gen; as a Jepsen generator.

test

(test opts)

A partial test, including a generator and checker. You’ll need to provide a client which can understand operations of the form:

{:type :invoke, :f :txn, :value [[:r 3 nil] [:append 3 2] [:r 3]]}

and return completions like:

{:type :ok, :f :txn, :value [[:r 3 [1]] [:append 3 2] [:r 3 [1 2]]]}

where the key 3 identifies some list, whose value is initially 1, and becomes 1 2.

Options are passed directly to elle.list-append/check and elle.list-append/gen; see their docs for full options.