This project implements a pseudo-random data and query generator that can be used to test any Perl DBI, JDBC or ODBC-compatible SQL server, in particular MySQL, but also JavaDB and PostgreSQL.
The Random Query Generator is a new tool for generating complete databases and executing queries against them for the purpose of functional and stress testing.
The tool is capable of executing test scenarios that include:
* Generate a database from a description of the desired data contents and properties;
* Execute random queries based on SQL templates the queries must conform to;
* Compare the results returned by different server versions, configurations, or storage engines;
* Monitor the server during the test and detect deadlocks, crashes, replication failures and other interesting events;
The tool is useful for the following audiences:
* Storage engine implementors can use the tool to test their code and the way it interacts with features of the core server (such as partitioning and replication);
* Individual users who are eager to break the server will have a powerful weapon in their hands.
* Implementors who wish to evaluate MySQL stability and performance can generate syntetic data and workloads that match the application they are planning to deploy;
Copyright © 2008, 2013, Oracle and/or its affiliates. All rights reserved.
All code Code
- Version control system:
- Programming languages:
All bugs Latest bugs reported
Bug #1424136: "Table %s doesn't exist" error when trying to test a query
Reported on 2015-02-21
Bug #1349930: old http://forge.mysql.com/wiki links referenced throughout project
Reported on 2014-07-29
Bug #1222694: PS 5.6-QA tree in revid 418 (and earlier) locks up in mysqld
Reported on 2013-09-18
Bug #1220975: Any logging code in MySQL.pm (--sqltrace or otherwise) does not log all transformer queries to the RQG log
Reported on 2013-09-05
Bug #1108572: No text from say() or print() within ErrorLogAlarm makes it to the trial/runall log.
Reported on 2013-01-29
All blueprints Latest blueprints
Reporter which calls a script or program at begin at end and during some RQG run.
Registered on 2011-09-15
Starting server in debug mode in release build in rqg run
Registered on 2011-04-20
Running rqg as a non-root user with specific permission set
Registered on 2011-04-19
Better handling for grammar syntax errors
Registered on 2010-09-10
Simplify mysql query logs in the .log format
Registered on 2010-09-07