Bolt-On Strong Consistency: Specification, Implementation, and Verification Journal Article uri icon

Overview

abstract

  • ; Strongly-consistent replicated data stores are a popular foundation for many kinds of online services, but their implementations are very complex. Strong replication is not; available; under network partitions, and so achieving a functional degree of fault-tolerance requires correctly implementing; consensus algorithms; like Raft and Paxos. These algorithms are notoriously difficult to reason about, and many data stores implement custom variations to support unique performance tradeoffs, presenting an opportunity for automated verification tools. Unfortunately, existing tools that have been applied to distributed consensus demand too much developer effort, a problem stemming from the low-level programming model in which consensus and strong replication are implemented—asynchronous message passing—which thwarts decidable automation by exposing the details of asynchronous communication. In this paper, we consider the implementation and automated verification of strong replication systems; as applications; of weak replicated data stores. Weak stores, being available under partition, are a suitable foundation for performant distributed applications. Crucially, they abstract asynchronous communication and allow us to derive local-scope conditions for the verification of consensus safety. To evaluate this approach, we have developed a verified-programming framework for the weak replicated state model, called Super-V. This framework enables SMT-based verification based on local-scope artifacts called; stable update preconditions; , replacing standard-practice global inductive invariants. We have used our approach to implement and verify a strong replication system based on an adaptation of the Raft consensus algorithm.;

publication date

  • April 9, 2025

Date in CU Experts

  • April 16, 2025 1:41 AM

Full Author List

  • Lewchenko NV; Kaki G; Chang B-YE

author count

  • 3

Other Profiles

Electronic International Standard Serial Number (EISSN)

  • 2475-1421

Additional Document Info

start page

  • 1604

end page

  • 1631

volume

  • 9

issue

  • OOPSLA1