I'd like to update especially Nemesis behaviour of Jepsen tests for C*, ScalarDB, and Scalar DL. It should be merged after resolving the current issue about setting up a test environment for Jepsen 0.3.1.
Motivation
The existing nemesis code for multiple nemeses was injected in an unofficial way
"conductors" module was dismissed from Jepsen, but we still use cassandra.conductors
We could specify fine-grained nemesis, but we have never set them; e.g. we could set "bump" and "strobe" as the clock nemesis, but it is enough to set a clock nemesis including both which is called "drift". And, we couldn't inject multiple network failures at the same test.
Changes
Coarse-grained nemesis: partition , clock , crash
Add admin injection for node participation which shouldn't be a nemesis
Make each test with a common function
Remove cassandra.conductors
CLI changes
--test is replaced with --workload. --join is replaced with --admin. And, --clock is integrated into --nemesis clock.
e.g.
lein run test --workload lwt --nemesis crash --admin join --ssh-private-key ~/.ssh/id_rsa
--workload specifies a test workload. previously we used --test
I'd like to update especially Nemesis behaviour of Jepsen tests for C*, ScalarDB, and Scalar DL. It should be merged after resolving the current issue about setting up a test environment for Jepsen 0.3.1.
Motivation
cassandra.conductors
Changes
CLI changes
--test
is replaced with--workload
.--join
is replaced with--admin
. And,--clock
is integrated into--nemesis clock
. e.g.--workload
specifies a test workload. previously we used--test
--nemesis
setsnone
,partition
,clock
, and/orcrash
(default: none)--admin
setsnone
,join
and/orflush
(default: none)