StormWeaver is a concurrent database testing tool inspired by PStress. It has two jobs: randomized concurrent stress testing to shake out synchronization/locking/memory bugs in the server, and stable, deterministic product tests you can run in CI. The core is C++23 (metadata/actions/workers/SQL), driven from free-threaded Python 3.14t scenarios via nanobind. PostgreSQL and MySQL (community, Percona Server, PXC) are supported.
First time on a machine: install Conan 2 and run conan profile detect (details: building docs). Then:
uv python install 3.14t
uv venv
uv pip install -e . --group dev
uv run stormweaver scenarios/ci/basic.py -i /path/to/postgres/installtask setup # uv python install + venv + editable install + pre-commit hooks
task test # C++ tests, python unit tests, and the basic scenarioSee task --list for all targets (fmt, lint, tidy, cpp:build, ...).
Full documentation, including scenario writing, python actions, stable tests, and determinism guarantees, is at https://percona-lab.github.io/stormweaver/ (or browse docs/).