New in v0.4
Error Handling
By default, errors from the database cause DBBench to stop the job. For example:
Errors (with frequency count)
(1x) pq: could not serialize access due to concurrent update
Error occurred while running:
(1x) UPDATE t SET val = val + 1 WHERE val > 200
This error trace shows the number of times the error occurred (1x), and a breakdown of the queries causing the error (UPDATE t SET val = val + 1 WHERE val > 200
, which caused the error one time (1x)).
To mark an error as expected, use the error code for your database flavor:
# MySQL ER_LOCK_WAIT_TIMEOUT
error=1205
Multiple errors can be specified. Expected errors are counted and error rate (also known as abort rate) is reported.
As of this release, DBBench supports error handling in Postgres and MySQL. In other database flavors, DBBench gracefully fails upon encountering an error.
CircleCI for Continuous Integration
Vertica Support
Vertica is now a supported database flavor.
Custom Connection Params
Override the default connection params with a new params
command line flag.
Other
Various other bug fixes and stability improvements.