3 ms·
Well you can run Jepsen tests against single nodes and use it to validate consistency on that single node if you want, but it's not really what it's made for, t
by EwanToo 11y ago
Well you can run Jepsen tests against single nodes and use it to validate consistency on that single node if you want, but it's not really what it's made for, the github tagline for it is:
"Call Me Maybe: simulating network partitions in DBs"
Running Jepsen against a log shipping automation script is, to my mind, largely redundant.
Running it against this system would be testing Postgres [1], not yoke.
[1] - https://aphyr.com/posts/282-call-me-maybe-postgres https://aphyr.com/posts/282-call-me-maybe-postgres
- icebraining 11y agoCan't an extra layer of inconsistencies arise if there's a network partition, and each yoke process thinks it should be the primary, so both accept writes?
- EwanToo 11y agoI guess so yeah, I hadn't considered that :)
- dan353hehe 11y agoThats true, however in yokes case, each cluster needs a third member called a monitor who only serves to resolve network partitions. a secondary cannot self promote to primary without the monitor agreeing. two node systems can never work as a primary/secondary failover solution in the presence of a network partition. disclosure: I helped write yoke.
- tveita 11y agoCan the old master still accept requests if it loses contact with the monitor or secondary? What happens if the monitor goes down? Can there be data loss on failover? It would be nice if the readme listed what failure scenarios are handled and what guarantees you intend the system to have.