Some people ask about Replicache's consistency model. This is a good question! As the saying goes: it's easy to be fast and incorrect. We wanted to be sure, so we asked Jepsen to review our early designs: https://replicache.dev/jepsen.html .https://twitter.com/jepsen_io/status/1227275468220530696 …
-
Show this thread
-
In short, a correctly implemented Replicache-powered system (including all clients and your backend) will be Causal+ Consistent: https://jepsen.io/consistency/models/causal …. This is one of the strongest consistency models offline clients can ensure.
1 reply 0 retweets 1 likeShow this thread -
What does this mean to you as a developer? We think it's a pretty nice way to work. You get arbitrary transactions, written in a full programming language that are very similar to "ACID"-style transactions.
1 reply 0 retweets 1 likeShow this thread -
The only caveat is durability: transactions aren't final until confirmed by your server. For many transactions (mark-read, compose-draft) you can assume success and tell user they are final immediately. For some (buy-concert-ticket), you will want to wait for server to confirm.
2 replies 1 retweet 2 likesShow this thread
Er to be clear, speculative transactions can (and should!) violate ACID isolation and consistency too, not just durability. :)
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.