Checks for a strict serializability anomaly in which T1 < T2, but T2 is visible without T1.
We perform concurrent blind inserts across n keys, and meanwhile, perform reads of n keys in a transaction. To verify, we replay the history, tracking the writes which were known to have completed before the invocation of any write w_i. If w_i is visible, and some w_j < w_i is not visible, we've found a violation of strict serializability.
Splits keys up onto different tables to make sure they fall in different shard ranges
Checks for a strict serializability anomaly in which T1 < T2, but T2 is visible without T1. We perform concurrent blind inserts across n keys, and meanwhile, perform reads of n keys in a transaction. To verify, we replay the history, tracking the writes which were known to have completed before the invocation of any write w_i. If w_i is visible, and some w_j < w_i is *not* visible, we've found a violation of strict serializability. Splits keys up onto different tables to make sure they fall in different shard ranges
(checker)Takes a history of writes and reads. Verifies that subquent writes do not appear without prior acknowledged writes.
Takes a history of writes and reads. Verifies that subquent writes do not appear without prior acknowledged writes.
(errors history expected)Takes a history and an expected graph of write precedence, returning ops that violate the expected write order.
Takes a history and an expected graph of write precedence, returning ops that violate the expected write order.
(graph history)Takes a history and returns a first-order write precedence graph.
Takes a history and returns a first-order write precedence graph.
(r)(w k)(workload opts)A package of a generator and checker. 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 500.
A package of a generator and checker. 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 500.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 |