AntidoteDB / AntidoteDB/antidote

pn-counters are susceptible to partitioning

Aperta
#493 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Erlang
Stelle
892
Fork
92
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Running Jepsen tests on a pn-counter with partitioning has a high failure rate.

Please see [previous issue](https://github.com/AntidoteDB/antidote/issues/492) for configuration and the environment to reproduce. Then:

```bash
lein run test --test-count 20 --workload pn-counter --rate 100 --topology dcs --nemesis partition
```

Most tests consistently fail most of the time:
- all client op's return `:ok`
- most final reads are unequal and most are invalid
- non-monotonic reads with grow-only counters

Here's a plot of node read value differences from the complete total order counter, most tests are similar, showing 2 nodes ending up in a consistent state with 3 nodes diverging (swing, from p's to n's, counter):

![offsets-parition](https://user-images.githubusercontent.com/86082495/180354604-7cfb567e-1bce-44d1-b2a1-cae2cb3c5290.png)

And a counter where 4 nodes converge to an invalid value:

![offsets-partition-2](https://user-images.githubusercontent.com/86082495/180354704-1f268cda-c94f-47e7-a426-2135e49bf95c.png)

The nature and comprehensiveness in the respose to partitioning seemed to merit its own issue. Also to raise the status of the current zero mq being used.

Please suggest if it would be helpful to make any changes to the tests or environment.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.