Scale and performance in a distributed file system
ACM Transactions on Computer Systems (TOCS)
Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Managing update conflicts in Bayou, a weakly connected replicated storage system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Eventually-serializable data services
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
Model-checking of correctness conditions for concurrent objects
Information and Computation - Special issue: LICS 1996—Part 1
The IceCube approach to the reconciliation of divergent replicas
Proceedings of the twentieth annual ACM symposium on Principles of distributed computing
Constrained Properties, Semilinear Systems, and Petri Nets
CONCUR '96 Proceedings of the 7th International Conference on Concurrency Theory
Verifying Sequential Consistency on Shared-Memory Multiprocessor Systems
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
ACM Computing Surveys (CSUR)
Task Scheduling for Parallel Systems (Wiley Series on Parallel and Distributed Computing)
Task Scheduling for Parallel Systems (Wiley Series on Parallel and Distributed Computing)
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Monitoring Atomicity in Concurrent Programs
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
A semantically rich approach for collaborative model edition
Proceedings of the 2011 ACM Symposium on Applied Computing
Don't settle for eventual: scalable causal consistency for wide-area storage with COPS
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Conflict-free replicated data types
SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
Verifying concurrent programs against sequential specifications
ESOP'13 Proceedings of the 22nd European conference on Programming Languages and Systems
Hi-index | 0.00 |
We address the verification problem of eventual consistency of optimistic replication systems. Such systems are typically used to implement distributed data structures over large scale networks. We introduce a formal definition of eventual consistency that applies to a wide class of existing implementations, including the ones using speculative executions. Then, we reduce the problem of checking eventual consistency to reachability and model checking problems. This reduction enables the use of existing verification tools for message-passing programs in the context of verifying optimistic replication systems. Furthermore, we derive from these reductions decision procedures for checking eventual consistency of systems implemented as finite-state programs communicating through unbounded unordered channels.