TAF 3.0 introduces the new TAF Results Backend, a structured results database and parser pipeline that delivers fully automated performance change detection. …
Continue reading \"TAF 3.0 — Results Backend With Automated Performance Change Detection\"
The post TAF 3.0 — Results Backend With Automated Performance Change Detection appeared first on MariaDB.org.
TAF 3.0 — Results Backend With Automated Performance Change Detection appeared first on MariaDB.org
TAF 3.0 introduces the new TAF Results Backend, a structured results database and parser pipeline that delivers fully automated performance change detection. This system uses a deterministic workload hash, schema‑driven baselines, and stored‑procedure‑driven comparison. No procedural comparison code. No special‑case logic. Everything is clean and automatic.
Workload Hash Every test run gets a workload hash and parser builds it from:
This hash is the identity of the workload.
Runs with the same hash belong to the same workload group.
BaselineA baseline is simply a prior run with the same workload hash that has been marked as a baseline.
Each baseline has:
TAF keeps all baselines, giving you a complete history.
When A New Run ArrivesWhat the Java Parser (BackendParser.jar) Actually Performs:
The parser calls the check_for_baseline stored procedure to compute comparisons.


Database Plugins — Version 3.0Database plugins were upgraded to support the makers plugins and runtime architecture.
TAF 3.0 introduces option db_runtime_dir as the authoritative runtime location:
TAF 3.0 adds a small set of backend, parser, configuration, and comparison files that enable the new Results Backend and automated performance change detection. Below is a short, accurate description of what each item is in the release.
Backend / Parser Components
These properties expose backend, parser, runtime, and threshold settings to the framework.
Thanks for being here and for continuing to push TAF forward.
We hope the changes in TAF 3.0 make your benchmarking, regression hunting, and database development faster, cleaner, and more predictable. This release is a foundation, and like every part of TAF, it grows through the work of people who care about performance, correctness, and reproducibility.
For anyone setting up the new Results Backend, we’ve included a detailed PDF in taf-perl/help (TAF-PERL_Results_Backend.pdf). It walks through backend creation, configuration, parser setup, ingestion flow, and automated compare behavior in far more depth than this blog. If you’re deploying the backend for the first time, that document will guide you through every step.
We are always looking for contributors. Some current needs include:
All contributions are welcome, encouraged, and absolutely appreciated. If you build something, improve something, or even just point out something that should exist, you’re helping move the entire benchmarking ecosystem forward. Thank you for being part of it.
And one final point: it really does not matter whether a change is a regression or a gain — every change needs to be understood. Automated detection is only the beginning. The real value comes from knowing why something moved, and ensuring that every shift in performance is visible, explainable, and never ignored. You never know when a GAIN is caused by a functional regression, and that’s exactly why TAF treats all change as equally important.
ReflectionI keep thinking about something Sergei Golubchik said to me not long ago, about wanting a box in the corner that just runs the automation and handles the results. I spent years saying that exact line to Trim Pershad when I was pushing MySQL System QA toward real, continuous performance testing. When I finally got moved into System QA for MySQL Server performance change detection, Trim said, “Make it happen.” It took a few versions to get the discipline, the tooling, and the flow right, but by the time I left we had more than 80 hosts and VMs running continuous MySQL performance change detection tests. Hearing Sergei say the same words back to me decades later made me smile, because it reminded me that all of this — the framework, the backend, the reproducibility, the comparisons — starts with the same simple idea: put a box in the corner and let it tell the truth.
PS: Database ProvidersTo MySQL, PostgreSQL, and all database vendors — please take this performance testing framework and use it. The MariaDB Foundation released it openly because performance change detection should benefit the entire database ecosystem, not just one project. If this helps you prevent regressions, validate improvements, or simply understand your engine more clearly, that’s exactly the point. Users deserve predictable performance, and TAF exists to make that possible for all.

About the Author
Jonathan (Jeb) Miller has experience in military leadership, Fire/EMS leadership, computer operations leadership, teaching, and more than 26 years of database performance engineering (PervasiveSQL, MySQL, MariaDB). TAF is the third benchmarking framework he has helped design and build.
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Simple tool to build MariaDB commits for performance-change analysis | 0 | 6.98 | 18-06-2026 |
| 2 | MariaDB Contribution Statistics, January-June 2026 | 0 | 11.03 | 25-08-2026 |
| 3 | MariaDB Community Server Q3 2026 maintenance releases | 0 | 18.63 | 24-08-2026 |
| 4 | MariaDB 12.3 LTS Webinar: Performance, Scalability, High Availability & the AI-Native Database | 0 | 14.57 | 18-08-2026 |
| 5 | TDE performance in PostgreSQL | 0 | 5.98 | 20-07-2026 |
| 6 | MariaDB 12.3 LTS: Advances and Building Fault-Tolerant MariaDB Infrastructure at Internet Scale | 0 | 14.98 | 10-08-2026 |
| 7 | MariaDB High Availability: Maximum Availability Solutions in MariaDB 12.3 LTS | 0 | 9.37 | 17-08-2026 |
| 8 | MariaDB Server 12.3, 11.8, 11.4 and 10.11 – Q3 2026 Maintenance Releases, and Goodbye 10.6 | 0 | 15.98 | 25-08-2026 |
| 9 | pg_tde: our fork is temporary, our commitment to open TDE is not | 0 | 4.71 | 08-07-2026 |
| 10 | MariaDB Foundation at Oracle’s MySQL Contributor Summit: Ecosystems, Forks and Constructive Coexistence | 0 | 8.54 | 28-05-2026 |