aboutsummaryrefslogtreecommitdiff
path: root/script/jepsen.garage/README.md
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2023-10-20 12:56:45 +0200
committerAlex Auvolat <alex@adnab.me>2023-10-20 12:56:55 +0200
commit4b93ce179a3777c8461f3b5843dc3802bddc739c (patch)
treef0dbf38bd5acc380276bfc0a8099ca14b43fa65e /script/jepsen.garage/README.md
parent4ba18ce9cca1b828edcf3f8c8770d49c75ed3083 (diff)
downloadgarage-4b93ce179a3777c8461f3b5843dc3802bddc739c.tar.gz
garage-4b93ce179a3777c8461f3b5843dc3802bddc739c.zip
jepsen: errors in reg2 workload under investigation
Diffstat (limited to 'script/jepsen.garage/README.md')
-rw-r--r--script/jepsen.garage/README.md25
1 files changed, 19 insertions, 6 deletions
diff --git a/script/jepsen.garage/README.md b/script/jepsen.garage/README.md
index 8dcd3766..762901fe 100644
--- a/script/jepsen.garage/README.md
+++ b/script/jepsen.garage/README.md
@@ -35,7 +35,7 @@ lein run test --nodes-file nodes.vagrant --time-limit 64 --rate 50 --concurrenc
### Register linear, without timestamp patch
-Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 20 --concurrency 20 --workload reg --ops-per-key 100`
+Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 20 --concurrency 20 --workload reg1 --ops-per-key 100`
Results: fails with a simple clock-scramble nemesis.
@@ -45,7 +45,7 @@ clocks are scrambled.
### Register linear, with timestamp patch
-Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 20 --concurrency 20 --workload reg --ops-per-key 100 -I`
+Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 20 --concurrency 20 --workload reg1 --ops-per-key 100 -I`
Results:
@@ -54,9 +54,23 @@ Results:
Explanation: S3 objects are not meant to behave like linearizable registers. TODO explain using a counter-example
-### Read-after-write CRDT register model
+### Read-after-write CRDT register model, without timestamp patch
+
+Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 100 --concurrency 100 --workload reg2 --ops-per-key 100`
+
+Results: fails with a simple clock-scramble nemesis.
+
+Explanation: old values are not overwritten correctly when their timestamps are in the future.
+
+### Read-after-write CRDT register model, with timestamp patch
+
+Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 100 --concurrency 100 --workload reg2 --ops-per-key 100 -I`
+
+Results:
+
+- Failures with clock-scramble nemesis + partition nemesis ???? TODO INVESTIGATE
+- TODO: layout reconfiguration nemesis
-TODO: determine the expected semantics of such a register, code a checker and show that results are correct
### Set, basic test (write some items, then read)
@@ -65,13 +79,12 @@ Command: `lein run test --nodes-file nodes.vagrant --time-limit 60 --rate 100 -
Results:
- For now, no failures with clock-scramble nemesis + partition nemesis
+- TODO: layout reconfiguration nemesis
### Set, continuous test (interspersed reads and writes)
TODO
-TODO: nemesis that reconfigures the cluster with a different subset of nodes, to have requests that occur during a resync period.
-
## Investigating (and fixing) wierd behavior