Saturday, October 24, 2026 4,350 lists 78,096 records on file
List your app or device

  1. Home
  2. Database Testing Tools
  3. Percona pstress

Percona pstress

What it is

Percona pstress is a free, open-source tool for concurrent database and crash recovery testing. It generates randomized transactions from user-provided options to create load on a single server or a cluster. Its stated use cases include checking database features, regressions, and crash recovery for MySQL, Percona Server, and Percona XtraDB Cluster. A multithreaded C++ workload generator works with a Bash driver for concurrency and recovery tests. The driver can stop and restart a server between steps, vary server variables, and continue using the previous step’s data directory. Command-line options control workload details such as thread count, tables, records, transaction size, and SQL operation probabilities. By default, each trial directory stores the data directory, server error logs, thread logs, mysqld binaries, and test configuration. It runs self-hosted on Linux and is identified as GPL-2.0 licensed. Building requires CMake 2.6 or later, a C++ compiler 4.7 or later, and development files for the target MySQL version or fork. A key limitation is that pstress does not verify whether successful queries return correct data, and its data checks are limited.

For and against

For

  • Free and open-source under GPL-2.0
  • Generates concurrent workloads on a server or cluster
  • Supports MySQL, Percona Server, and Percona XtraDB Cluster
  • Can continue recovery tests from a prior data directory
  • Saves logs and configuration in trial directories

Against

  • Does not verify correctness of successful query results
  • Data checks are limited
  • Build requires specified compiler, CMake, and development files

The verdict

pstress offers configurable concurrent workload and crash recovery testing for supported database systems. Its limited data checking means it does not establish whether successful queries returned correct results.

Who it suits

It suits database users conducting regression, feature, or crash recovery tests on supported MySQL versions and forks. It is designed for self-hosted Linux use.

Plans and prices

pstress

Free

Open-source database testing tool; source code and build instructions on GitHub

Every plan, in full

On the record

Architecture
pstress has a multithreaded C++ workload generator and a Bash driver script for concurrency and crash recovery testing.github.com · read 7 Oct 2026
Build requirements
The README lists CMake 2.6 or later, a C++ compiler 4.7 or later, and development files for the target MySQL version or fork as build requirements.github.com · read 7 Oct 2026
Crash recovery
The driver can stop and restart the server between test steps, vary server variables, and continue the workload using the previous step's data directory.github.com · read 7 Oct 2026
Diagnostics
By default, pstress saves each trial directory with the data directory, server error logs, thread logs, mysqld binaries, and the test configuration.github.com · read 7 Oct 2026
Intended users
Percona's article describes regression, feature, and crash recovery testing as pstress use cases.percona.com · read 7 Oct 2026
License
The repository identifies its license as GPL-2.0.github.com · read 7 Oct 2026
Limit
Percona's article says pstress does not verify that successful queries return correct data, and its data checks are limited.percona.com · read 7 Oct 2026
Purpose
pstress is a probability-based open-source tool for concurrent database testing and crash recovery testing.github.com · read 7 Oct 2026
Server support
The README gives build options for MySQL, Percona Server, and Percona XtraDB Cluster.github.com · read 7 Oct 2026
Testing uses
The README says users can use it to test database features, regressions, and crash recovery.github.com · read 7 Oct 2026
Workload controls
Command-line options control workload details such as thread count, tables, records, transaction size, and SQL operation probabilities.github.com · read 7 Oct 2026
Workload generation
It generates random transactions based on user-provided options and can create concurrent load on a cluster or a single server.github.com · read 7 Oct 2026

Alternatives to Percona pstress

Every alternative, ranked