Visible to the public Chapar: Certified Causally Consistent Distributed Key-value Stores

TitleChapar: Certified Causally Consistent Distributed Key-value Stores
Publication TypeConference Paper
Year of Publication2016
AuthorsLesani, Mohsen, Bell, Christian J., Chlipala, Adam
Conference NameProceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
PublisherACM
Conference LocationNew York, NY, USA
ISBN Number978-1-4503-3549-2
Keywordscausal consistency, composability, compositionality, Computing Theory, Computing Theory and Composabilty, pubcrawl, theorem proving, verification
Abstract

Today's Internet services are often expected to stay available and render high responsiveness even in the face of site crashes and network partitions. Theoretical results state that causal consistency is one of the strongest consistency guarantees that is possible under these requirements, and many practical systems provide causally consistent key-value stores. In this paper, we present a framework called Chapar for modular verification of causal consistency for replicated key-value store implementations and their client programs. Specifically, we formulate separate correctness conditions for key-value store implementations and for their clients. The interface between the two is a novel operational semantics for causal consistency. We have verified the causal consistency of two key-value store implementations from the literature using a novel proof technique. We have also implemented a simple automatic model checker for the correctness of client programs. The two independently verified results for the implementations and clients can be composed to conclude the correctness of any of the programs when executed with any of the implementations. We have developed and checked our framework in Coq, extracted it to OCaml, and built executable stores.

URLhttp://doi.acm.org/10.1145/2837614.2837622
DOI10.1145/2837614.2837622
Citation Keylesani_chapar:_2016