Testing Apache Cassandra with Jepsen
The text discusses the use of Jepsen framework for testing distributed systems, specifically Apache Cassandra. It highlights how Jepsen differs from other testing approaches like unit tests and dtests in terms of state space coverage, controllability, and observability. Jepsen's strength lies in its ability to better explore the state space of both a single node and a whole cluster by embracing concurrency and nondeterminism as the default mode of operation. The text also mentions how Jepsen tests helped identify issues in existing subsystems leading up to the release of Cassandra 3.0, and how it contributed to stabilizing new features like materialized views. It concludes by emphasizing the importance of well-defined models and invariants in testing, test composability, and embracing generative testing for distributed systems.
Company
DataStax
Date published
Jan. 20, 2016
Author(s)
Joel Knighton
Word count
1254
Hacker News points
None found.
Language
English