Skip to content

A curated list of awesome deterministic simulation testing resources 😎

License

Notifications You must be signed in to change notification settings

ivanyu/awesome-deterministic-simulation-testing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 

Repository files navigation

Awesome Deterministic Simulation Testing

A curated list of awesome deterministic simulation testing resources.

Awesome

Case studies and blogs

An overview of the deterministic simulation testing in FoundationDB, influential for many following cases.

An overview of BUGGIFY macro from FoundationDB.

How we used WASM and some Go runtime modifications to run deterministic simulation tests against FrostDB

This guide contains basic information about deterministic testing of distributed, message-based, event-driven, or actor systems.

A blog series on Deterministic simulation from RisingWave

Deterministic Simulation: A New Era of Distributed System Testing (Part 1 of 2)

This article discusses the background and principles of deterministic simulation, introduce our deterministic testing framework Madsim, and share our experience applying deterministic testing to RisingWave.

Applying Deterministic Simulation: The RisingWave Story (Part 2 of 2)

Delve into the world of deterministic simulation as we introduce Madsim, a cutting-edge testing framework built on Rust's asynchronous programming ecosystem. Join us in this article as we unravel the fascinating utilization of deterministic simulation in RisingWave, a cloud-native distributed database.

… and how we rewrote the heart of sync with confidence.

Case studies of Antithesis

Deterministic Simulation Testing (DST) is one of our favorite parts about TigerBeetle, and it is a key way that we improve the system's reliability.

At Resonate, we consider deterministic simulation testing (DST) to be a cornerstone of our mission to build correct and reliable distributed systems. While an increasing array of projects, including Foundation DB, TigerBeetle DB, and Resonate itself, have embraced DST, along with companies like Antithesis providing platforms dedicated to this approach, comprehensive information remains limited.

Hiisi by Pekka Enberg

Hiisi is a proof of concept libSQL written in Rust following TigerBeetle-style with deterministic simulation testing.

The Twitter thread.

Software

Antithesis is a continuous reliability platform that autonomously searches for problems in your software within a simulated environment. Every problem we find can be perfectly reproduced, allowing for efficient debugging of even the most complex problems.

A deterministic simulator for distributed systems in Rust.

MadRaft - the labs of Raft consensus algorithm based on MadSim.

A framework for testing distributed systems, which provides deterministic execution by running multiple concurrent hosts within a single thread.