Changelog for Percona Toolkit v3.7.0-2 released 2025-05-14 This release addresses multiple security vulnerabilities reported in Percona Toolkit version 3.7.0, including issues related to the `libxml2` component (CVE-2024-56171, CVE-2025-24928), `openssl` (CVE-2024-12797), and `krb5` (CVE-2022-37967). * Fixed bug PT-2442: percona-toolkit:latest Vulnerability [CVE-2024-56171 CVE-2024-12797 CVE-2022-37967 CVE-2025-24928] * Fixed bug PT-2375: pt-table-sync does not work with generated columns (Thanks to Henning Pöttker for the contribution) * Fixed bug PT-2400: pt-table-checksum reports the error for warning code 4164 * Fixed bug PT-2377: pt-table-sync does not handle utf8 strings in JSON columns correctly (Thanks to Henning Pöttker for the contribution) * Fixed bug PT-2378: pt-table-sync does print floating point numbers in SQL statements with insufficient precision (Thanks to Henning Pöttker for the contribution) * Fixed bug PT-2389: pt-online-schema-change resume functionality doesn't work with ADD/DROP column (Thanks to Perry Harrington for the contribution) * Fixed bug PT-2410: pt-archiver brokes when using output-format=csv and has null values (Thanks to Roberto de Bem for the contribution) * Fixed bug PT-2422: pt-online-schema-change race overwrites new_table_name (Thanks to Perry Harrington for the contribution) * Fixed bug PT-2407: pt-online-schema-change exit status(return code) is 0 even if it does NOT succeed * Fixed bug PT-2355: pt-online-schema-change should not resume a job with empty boundaries * Fixed bug PT-1577: pt-secure-collect, replace pt-secure-data in Usage section v3.7.0 released 2024-12-23 * Feature PT-2340: Support MySQL 8.4 * Improvement PT-2347: Improper use of sha256 hash algorithm in percona-toolkit/src/go/pt-secure-collect /encrypt.go * Improvement PR-862: Fixed flaky tests (Thanks to Henning Pöttker for the contribution) * Improvement PR-839: Update pt-mysql-summary (Thanks to GOKUL S for the contribution) * Fixed bug PT-2371: pt-summary errors out with "STATUS_THP_SYSTEM: unbound variable" (Thanks to Jason Ng for the contribution) v3.6.0 released 2024-06-12 * Feature PR-754: Port improved pt-pmp (Thanks to Alexey Stroganov for the contribution) * Feature PT-1751: adds --where param to pt-online-schema-change * Feature PT-1717: resume pt-online-schema-change if interrupted * Improvement PT-2100: fixed Wide character error (Thanks to Satoshi MITANI for the contribution) * Improvement PT-2307: Include last inactive check messages on pt-galera-log-explainer (Thanks Yoann La Cancellera for the contribution) * Improvement PR-160: added support for operf if present, and if CMD_OPCONTROL is not set (Thanks to Fernando Ipar for the contribution) * Improvement PR-140: Add CPU cache configuration info to pt-summary (Thanks to Alexey Kopytov for the contribution) * Improvement PR-765: pt-galera-log-explainer: improvements from feedbacks (Thanks Yoann La Cancellera for the contribution) * Improvement PT-2233: pt-k8s-debug-collector needs psql in the host node (Thanks to Jobin Augustine for the contribution) * Improvement PR-772: pt-galera-log-explainer: add custom regexes parameter (Thanks Yoann La Cancellera for the contribution) * Improvement PT-2301: pt-galera-log-explainer: whois redesign (Thanks Yoann La Cancellera for the contribution) * Improvement PT-2190: pt-show-grants should use print_identified_with_as_hex * Improvement PT-2247: pt-show-grants does not CREATE USER (Thanks to Marco Tusa for the contribution) * Improvement PT-2299: collect openssl x509 certificate information for each secret * Fixed bug PT-2298: pt-galera-log-explainer: superfluous lines on conflicts (Thanks Yoann La Cancellera for the contribution) * Fixed bug PT-2295: Fix tests on distributions * Fixed bug PT-2275: "System Summary" graph breaks when perl is not available (OS summary dashboard) * Fixed bug PT-2284: pt-kill 3.5.5: "Wide character in printf at /usr/bin/pt-kill line 7553." * Fixed bug PT-2264: pt-query-digest Pipeline process 11 (--output slowlog) caused an error: Wide character * Fixed bug PT-2313: pt-diskstat fails with new kernels again * Fixed bug PT-1911: pt-online-schema-change can't use options port * Fixed bug PT-2119: pt-osc aborts in 8.0.15 even if no FK exists #792 * Fixed bug PT-1194: LP #1266896: pt-table-sync port problem * Fixed bug PT-2217: pt-mongodb-summary gives error with psmdb6.0 * Fixed bug PT-2231: pt-osc + PTDEBUG=1 fails with Use of uninitialized value in concatenation (.) or string at ./pt-online-schema-change line 4309. * Fixed bug PT-2327: pt-mysql-summary fails to connect if password has a single quote character * Fixed bug PT-2302: pt-k8s-debug-collector cannot pass properly to pt-mysql-summary pxc root password with special characters * Fixed bug PT-2309: pt-table-sync hits an error when the primary key is uuid binary * Fixed bug PT-2154: Fix tests for pt-table-sync v3.5.7 released 2023-12-23 This is a HotFix release that does not have any public bug fix v3.5.6 released 2023-12-21 * Feature PR-669: Add pt-galera-log-explainer (Thanks Yoann La Cancellera for the contribution) * Improvement PT-1860: pt-osc case sensitivity issue (Thanks to Ivan Kruglov for the contribution) * Improvement PR-388: Check undefined skip check slave lag schema change (Thanks to Chrys Swingler for the contribution) * Improvement PR-471: Support adding explain output for slow query in JSON report as well (Thanks to Ayush Goyal for the contribution) * Improvement PR-509: added new hook before_die (Thanks to Ilaria Migliozzi for the contribution) * Improvement PR-681: Introduce EditorConfig (Thanks to Viktor Szépe for the contribution) * Improvement PR-691: Fix newly discovered typos (Thanks to Viktor Szépe for the contribution) * Improvement PR-706: Follow PR-429 unstop option with testcase (Thanks to fraff for the contribution) * Improvement PR-712: ARM64 support for macOS * Improvement PR-713: Fix MongoDB StorageEngine (Thanks to Viktor Szépe for the contribution) * Improvement PR-714: Fix MongoDB Security (Thanks to Viktor Szépe for the contribution) * Improvement PR-715: Fix variable collision with imported package name (Thanks to Viktor Szépe for the contribution) * Improvement PR-716: Make OrderedBy not exported (Thanks to Viktor Szépe for the contribution) * Improvement PR-720: build Go tools from top Makefile (Thanks to Sami Ahlroos and Yoann La Cancellera for the contribution) * Fixed bug PT-2064: pt-archiver: Can't call method "rollback" on an undefined value (Thanks to Jakob for the contribution) * Fixed bug PT-2083: Pt-archiver --charset option is not working for MySQL8.0 * Fixed bug PT-2109: pt-mysql-summary throws an error when using sql_mode="ANSI_QUOTES" * Fixed bug PT-2207: pt-archiver doesn't work when ANSI_QUOTES is set in sql_mode * Fixed bug PT-2211: This pstack return error code line number (Thanks to Zongzhi Chen for the contribution) * Fixed bug PT-2268: pt-online-schema-change 3.5.5 breaks on mysql5.7 with server_id 0 * Fixed bug PT-2277: pt-visual-explain errors out on some valid inputs (Thanks to Jason Ng for the contribution) * Fixed bug PT-2279: Option --charset is confusing when set to utf8mb4 * Fixed bug PT-2281: provide container name for copying files in the dump * Fixed bug PT-2286: CVE reported in Percona Toolkit version 3.5.5 related to GO (Thanks to Kushal Haldar for reporting this issue) v3.5.5 released 2023-10-03 * Feature PR-645: Add after nibble hook to pt-online-schema-change (Thanks to Marcelo HP Ferreira for the contribution) * Feature PT-2258: Pass tbl as argument for on_copy_rows_after_nibble * Feature PT-2168: PT-OSC shouldn't fail while unable to monitor a replica node * Improvement PT-2156: Fix tests for lib * Improvement: Fixed typos, removed trailing whitespaces, added spelling workflow to GitHub (Thanks to Viktor Szépe for the contributions) * Fixed bug PT-2235: pt-mongodb-index-check does not support option --version * Fixed bug PT-2236: pt-secure-collect, pt-pg-summary do not follow PT standard for option --version * Fixed bug PT-2241: using --skip-check-slave-lag multiple times does not work as expected (Thanks to PinoCao for the contribution) * Fixed bug PT-2246: CVE reported in Percona Toolkit version 3.5.4 related to Go (Thanks to Kushal Haldar for reporting this issue) * Fixed bug PT-2248: pt-k8s-debug-collector does not run pg_gather with K8SPG 2 v3.5.4 released 2023-06-30 * Improvement PT-2151: Fix tests for pt-query-digest * Improvement PR-614: Support for environments that do not have SQL mode, such as OceanBase (Thanks to hanzhongzi for the contribution) * Improvement PR-617: Remove $has_child_tables var (Thanks to Ricardo for the contribution) * Fixed bug PT-2101: pt-mongodb-query-digest doesn't work on standalone server * Fixed bug PT-813: LP #1371774: pt-query-digest inconsistent rank order * Fixed bug PT-981: LP #1008240: t/pt-query-digest/processlist.t occasionally fails * Fixed bug PT-2229: CVE reported in Percona Toolkit version 3.5.3 related to Logrus (Thanks to Kushal Haldar for reporting this issue and testing the fix) v3.5.3 release 2023-06-05 * Fixed bug PT-1583: Skipping chunks when using pt-online-schema-change (Thanks to monty solomon for reporting this issue) * Fixed bug PT-2048: pt-osc spans excessive connections to the replica when executing in the source * Fixed bug PT-2169: pt-k8s-debug-collector integration of pg_gather requires croping first line of the output file * Fixed bug PT-2203: CVEs reported in Percona Toolkit version 5.3.2 related to GO (Thanks to Kushal Haldar for reporting this issue) * Fixed bug PT-2196: Bug in pt-secure-collect --output-file (Thanks to Michael Patrick for reporting and fixing this issue) v3.5.2 release 2023-03-28 * Improvement PT-188: Use percona.checksums in examples * Improvement PT-2141: Fix tests for pt-archiver * Improvement PT-2149: Fix tests for pt-mext * Improvement PT-2150: Fix tests for pt-mysql-summary * Improvement PT-2152: Fix tests for pt-show-grants * Improvement PT-2155: Fix tests for pt-upgrade * Improvement PT-2156: Fix tests for lib * Improvement PT-2159: Fix tests for pt-duplicate-key-checker * Improvement PT-2160: Fix tests for pt-online-schema-change * Improvement PT-2161: Fix tests for pt-slave-restart * Improvement PT-2164: pt-k8s-debug-collector does not have version flag * Improvement PT-2165: Actual Version, GoVersion, and Build for Go tools * Fixed bug PT-215: Documentation fix * Fixed bug PT-1059: LP #1093972: Tools can't parse index names containing newlines * Fixed bug PT-1389: LP #1637859: [pt-variable-advisor] Docs Typos * Fixed bug PT-1594: Need correction in the Documentation - pt-mysql-summary * Fixed bug PT-1595: percona toolkit docs still reference Maatkit * Fixed bug PT-1642: Update PT docs to reference bug reporting location as Percona JIRA * Fixed bug PT-1683: List of supported distributions in the docs is outdated * Fixed bug PT-1700: pt-table-checksum REPLICATION_STOPPED exit status not documented * Fixed bug PT-1927: pt-k8s-debug-collector requires mysql client * Fixed bug PT-1930: pt-k8s-debug-collector should not attempt collecting PXC information when running against PSMDB * Fixed bug PT-2084: Changes from PT-80 broke previous pt-stalk functionality (Thanks Agustín Gallego) * Fixed bug PT-2102: pt-mysql-summary should support !include* in config files (Thanks Yoann La Cancellera) * Fixed bug PT-2110: Incorrect PTDEBUG output with --ignore-engines option (Thanks Kazuya Yokogawa) * Fixed bug PT-2114: Incorrect casting of BIT columns by pt-archiver * Fixed bug PT-2116: pt-osc --null-to-not-null description is wrong (Thanks Yoann La Cancellera) * Fixed bug PT-2120: pt-stalk with --system-only displaying "MYSQL_ONLY:" message on the screen * Fixed bug PT-2123: pt-archiver gives error "Wide character in print at /usr/bin/pt-archiver line 6815" when using --bulk-insert while using character set alias * Fixed bug PT-2187: CVEs reported in Percona Toolkit version 5.3.1 related to GO. v3.5.1 release 2023-01-23 * Feature PT-2134: Add support for PostgreSQL and MySQL operators in pt-k8s-debug-collector * Improvement PT-2138: Fix tests for pt-table-checksum * Improvement PT-2142: Fix tests for pt-config-diff * Improvement PT-2143: Fix tests for pt-deadlock-logger * Improvement PT-2144: Fix tests for pt-fifo-split * Improvement PT-2145: Fix tests for pt-find * Improvement PT-2146: Fix tests for pt-fk-error-logger * Improvement PT-2147: Fix tests for pt-heartbeat * Improvement PT-2148: Fix tests for pt-kill * Improvement PT-2153: Fix tests for pt-slave-find * Fixed bug PT-2139: CVEs in golang binaries * Fixed bug PT-2140: Update modules in the main branch * Fixed bug PR-462: Fix some spelling errors (Thanks Dario Minnucci) v3.5.0 release 2022-11-28 * Improvement PT-1052: Include NUMA information in pt-tool output * Improvement PT-1926: pt-k8s-debug-collector should not collect passwords * Improvement PT-2033: Avoid running same query concurrently from pt-stalk * Improvement PT-2105: Let pt-k8-debug-collector to collect individual logs in PXC pods in addition to `kubectl logs` * Improvement PT-2107: Merge Community PRs 466, 298, 58, 53 into 3.x * Improvement PT-2080: Add JSON logging to pt-kill (Thanks dm-2) * Improvement PT-2091: Migrate docs to Render * Fixed bug PT-1739: disable-qrt-plugin option of pt-table-checksum is broken (Thanks E. Souhrada) * Fixed bug PT-1799: pt-osc + PTDEBUG=1 fails with Use of uninitialized value in concatenation (.) or string at /usr/bin/pt-online-schema-change line 4270 * Fixed bug PT-1897: pt-stalk on MySQL 8 not collecting "lock" information * Fixed bug PT-1959: go part of the toolkit still has the version 3.3.0 * Fixed bug PT-2075: Fix tests for pt-stalk, so they can work with 8.0 * Fixed bug PT-2092: Improper version of protobuf in go.sum * Fixed bug PT-2125: Documentation outdated or missed for tools, written in Go * Fixed bug PT-2086: Typos (Thanks Iwo Panowicz) * Fixed bug PR-553: Fix some typos in documentation of pt-query-digest (Thanks Christian Bartolomäus) * Fixed bug PR-53: Docs table regex (Thanks Daniël van Eeden) * Fixed bug PR-58: Correcting specified package type in error message (Thanks Daniel Hoherd) * Fixed bug PR-298: Fix typo (Thanks Moritz Lenz) v3.4.0 release 2022-07-11 * New Tool PT-1978: Add reporting on unused/redundant indexes for MongoDB by pt-mongodb-summary * Improvement PT-1417: Inconsistent creation of toolkit tables * Improvement PT-1800: The environment variable PTDEBUG=1 exposes the passwords * Improvement PT-1940: ptsoc dropswap method that was rejected for Mysql 8 has been fixed with Mysql 8.0.14 * Improvement PT-1979: Add gathering of admin parameters for MongoDB by pt-mongodb-summary * Improvement PT-2037: Add option --skip-mysql or --system-only for pt-stalk * Fixed bug PT-1218: pt-stalk ominous open_tables function * Fixed bug PT-1336: pt-stalk removes user's files from the destination directory * Fixed bug PT-1398: pt-stalk gets the incorrect mysqld pid when the host installed a multi MySQL instance * Fixed bug PT-1627: pt-mysql-summary doesn't verify which version of jemalloc is in use * Fixed bug PT-1747: pt-online-schema-change: metadata lock can break database for rebuild_constraints * Fixed bug PT-1887: pt-diskstat is not working for new kernels * Fixed bug PT-1900: At times, pt-query-digest does not hide the parameters properly when parameter=binary * Fixed bug PT-1953: pt-summary typo: Memory management. * Fixed bug PT-1959: go part of the toolkit still has the version 3.3.0 * Fixed bug PT-1965: pt-stalk --mysql-only doesn't collect mysqladmin output (Thanks Sergey Kuzmichev) * Fixed bug PT-1966: Test no_drop_no_swap for the pt-online-schema-change is broken (Thanks Tsubasa Tanaka) * Fixed bug PT-1974: Support fingerprinting for --print in pt-kill * Fixed bug PT-1983: pt-summary missing one DIMM * Fixed bug PT-2016: pt-table-checksum fails to build replace query when table lacks primary key * Fixed bug PT-2023: pt-upgrade Error: Wide character in print v3.3.1 release 2021-04-28 * Fixed bug PT-716 : pt-summary reports wrong memory size * Fixed bug PT-1914: Column data lost when 'Generated' is in the column comment * Fixed bug PT-1919: pt-online-schema change drop_swap can lose triggers. (Thanks Bob) * Fixed bug PT-1943: BEFORE triggers are dropped after pt-online-schema-change run v3.3.0 release 2021-01-14 * Improvement PT-1940: Added mysql version check for bug fix introduced in 8.0.14 (Thanks duxthefux) * Fixed bug PT-1919: pt-online-schema change drop_swap can lose triggers. (Thanks Bob) * Fixed bug PT-1914: Column data lost when 'Generated' is in the column comment * Fixed bug PT-716 : pt-summary reports wrong memory size * Fixed bug PT-1983: pt-summary missing one DIMM (Thanks Sergey Kuzmichev) v3.3.0 release 2021-01-14 * Fixed bug PT-169 : pt-online-schema-change FKs error handling. * Fixed bug PT-1518: pt-table-checksum gives error CRC32. (Thanks @ovidiustanila) * Fixed bug PT-1822: pt-mongodb-summary fails on standalone mongodb instances * Fixed bug PT-1829: pt-heartbeat doesn't reconnect for check-read-only * Improvement PT-1836: Review and consider lintian reported issues * Improvement PT-1851: Backslashes missing from documentation * Improvement PT-1853: Added --no-check-foreign-keys to pt-osc * Fixed bug PT-1857: pt-heartbeat cannot reconnect. * Fixed bug PT-1859: pt-pg-summary fails for Postgres12 (Thanks Sergey Kuzmichev) * Fixed bug PT-1881: pt-upgrade fails when query including format strings and SQL errors is given (Thanks Nayuta Yanagisawa) * Fixed bug PT-1892: pt-summary says sshd not running v3.2.0 release 2020-04-23 * Fixed bug PT-1824: Name of a constraint can exceed 64 chars (Thanks Iwo Panowicz) * Fixed bug PT-1793: Protocol parser cannot handle year 2020 (Thanks Kei Tsuchiya) * Fixed bug PT-1782: pt-online-schema-change: FK keys warning, but there are no foreign keys * Fixed bug PT-1773: pt-online-schema-change: Restrict the FK check if needed * Fixed bug PT-1766: pt-table-checksum: DIFF_ROWS is not computed correctly * Improvement PT-1765: Documentation for pt-table-checksum's DIFF_ROWS * Fixed bug PT-1760: pt-online-schema-change: regression on slave with replication channels * Fixed bug PT-1759: pt-stalk not collecting processlist and variables * Improvement PT-1757: pt-table-checksum: Improvement on handling Small Tables * Improvement PT-1707: IPv6 support * Fixed bug PT-1576: pt-stalk mysql-only not working as expected * Fixed bug PT-1502: pt-online-schema-change not working with multi-source replication * Fixed bug PT-297 : pt-online-schema-change can break replication v3.1.0 release 2019-09-12 * Fixed bug PT-1114: pt-table-checksum fails when table is empty * Fixed bug PT-1344: pt-online-schema-change: Use of uninitialized value $host in string * Fixed bug PT-1575: pt-mysql-summary does not print PXC section for PXC 5.6 and 5.7 * Fixed bug PT-1630: pt-table-checksum not working with galera cluster anymore since 3.0.11 * Fixed bug PT-1633: Fix incorrect parsing of a variable with number + K,M,G,T (Thanks Dieter Adriaenssens) * Fixed bug PT-1633: pt-config-diff doesn't handle innodb_temp_data_file_path correctly * Improvement PT-1663: Implement retention by bytes for pt-stalk * Fixed bug PT-1670: pt-table-checksum fails when table is empty * New-tool PT-1696: pt-postgresql-summary * Improvement PT-1705: Make pt-online-schema-change exit with different codes depending on the status * Fixed bug PT-1709: Error: Use of uninitialized value in concatenation (.) or string at pt-upgrade * Fixed bug PT-1715: pt-upgrade documentation doesn't have the type tcpdump * Fixed bug PT-1720: pt-pmp parses configuration files that lead to errors * Fixed bug PT-1728: Pt-table-checksum failing to scan small tables that get wiped out often * Fixed bug PT-1734: Tailing log_error in pt-stalk doesn't work * Improvement PT-1741: Migration to new MongoDB driver * Improvement PT-1746: diskstats not working for kernel 4.18+ * Improvement PT-1761: Prevent pt-osc to run under MySQL 8.0.14 ~ 8.0.17 v3.0.13 released 2018-12-28 * Fixed bug PT-1673: Fix pt-show-grants for MariaDB 10+ (thanks Tim Birkett) * Fixed bug PT-1638: pt-online-schema-change not working with MariaDB 10.x * Improvement PT-1637: Added --fail-on stopped-replication param to table checksum * Fixed bug PT-1616: pt-table-checksum fails to --resume on certain binary strings * Fixed bug PT-1573: pt-query-digest log_timestamps = SYSTEM # No events processed * Improvement PT-1340: pt-stalk should not call mysqladmin debug by default * Fixed bug PT-157: Specifying the index to use for pt-archiver ignores --primary-key-only v3.0.12 released 2018-09-13 * Fixed bug PT-1611: pt-archiver fails with UTF-8 chars * Fixed bug PT-1574: pt-online-schema-change fails on UK and NULLs * Fixed bug PT-1572: Better usage of ENUM fields in keys in NibbleIterator * Fixed bug PT-1422: pt-mysql-summary may get stuck when Time: NULL in processlist * Improvement PT-1321: Add required MySQL privileges to pt-online-schema-change documentation v3.0.11 released 2018-07-06 * Improvement PT-1571 : Improved hostname recognition in pt-secure-collect * Fixed bug PT-1570 : pt-archiver fails to detect columns with the word GENERATED as part of the comment * Improvement PT-1569 : Disabled --alter-foreign-keys-method=drop_swap in pt-osc * Fixed bug PT-1563 : Fixed pt-show-grants for MySQL 5.6 * Improvement PT-1562 : pt-mysql-summary: Fix mysqld command for Travis * Fixed bug PT-1551 : pt-table-checksum fails on MySQL 8.0.11 * Improvement PT-242 : (pt-stalk) Include SHOW SLAVE STATUS on 5.7 (Thanks Marcelo Altmann) * Fixed bug PT-241 : (pt-stalk) Slave queries doesn't run on 5.7 (Thanks Marcelo Altmann) v3.0.10 released 2018-05-21 * Fixed bug PT-1556 : pt-table-checksum 3.0.9 doesn't change binlog_format to statement anymore * Improvement PT-1546 : Improved support of MySQL 8 roles * Improvement PT-1543 : Encrypted table status query causes high load over multiple minutes * Improvement PT-1536 : Add info about encrypted tablespaces in pt-mysql-summary * Feature PT-131 : Make pt-table checksum to disable QRT plugin * Feature PT-118 : pt-table-checksum report the number of rows of difference between master and slave v3.0.9 released 2018-04-17 * Feature PT-1530 : Add support for encryption status to mysql-summary * Feature PT-1526 : Add ndb status to pt-mysql-summary (Thanks Fernando Ipar) * Feature PT-1525 : Added support for MySQL 8 roles into pt-mysql-summary * Feature PT-1509 : Only set binlog_format when necessary (Thanks Moritz Lenz) * Feature PT-1508 : Adding --read-only-interval flag, and read-only check on wake-up (Thanks Shlomi Noach) * Improvement PT-1507 : pt-summary does not reliably read in the transparent huge pages setting (Thanks Nick Veenhof) * New tool PT-1501 : pt-secure-collect - New tool to collect and sanitize pt-tools outputs * Feature PT-243 : Adding --max-hostname-length and --max-line-length to pt-query-digest v3.0.8 released 2018-03-13 * Feature PT-1500 : add --secure-slowlog option to pt-query digest v3.0.7 released 2018-03-01 * Fixed Bug PT-244 : pt-online-schema-change --data-dir option broken for partitioned table * Feature PT-633 : Added --mysql-only option to pt-stalk for RDS * Fixed bug PT-1256: pt-table-sync does not use the character set for the table it is synchronizing * Fixed bug PT-1455: pt-osc is stuck when the table that is being altered is filtered out in the slave * Fixed bug PT-1485: pt-mysql-summary has broken Security section in versions bigger then 5.6 * Fixed bug PMM-1905: Explain fails if encounters negative "ntoreturn" v3.0.6 released 2017-12-20 * Fixed bug PT-234: General log parser cannot handle timestamps with tz * Fixed bug PT-229: pt-online-schema-change does not retry on deadlock error when using percona 5.7 * Fixed bug PT-225: pt-table-checksum ignores generated cols * Improvement PT-221: pt-table-sync pt-table-sync support for MyRocks * Improvement PT-218: pt-stalk checks RocksDB status * Improvement PT-214: Added RocksDB section to pt-mysql-summary * Improvement PT-205: pt-osc show message if trying to set engine to rocksdb and binlog_format != row * Improvement PT-204: Make pt-table-checksum to skip RocksDB tables v3.0.5 released 2017-11-20 * Improvement PMM-1590: Improve MongoDB Profiler for PMM and PT * Improvement PT-216: mongodb-query digest improved support for v<3.2 fixed incorrect output (Thanks MATSUU Takuto) * Fixed bug PT-211: pt-mext fails on Rsa_public_key line * Fixed bug PT-212: pt-mongodb-query-digest shows NaNs * Fixed bug PT-202: pt-online-schema-change fails with virtual columns * Fixed bug PT-200: Index with keyword 'unique' as prefix/suffix considered as unique * Fixed bug PT-199: pt-table-checksum does not make the session statement based when using row based replication * Fixed bug PT-196: pt-onine-schema-change is pausing because {some_status_variable}=0 * Fixed bug PT-193: pt-table-checksum reports misleading error if comment has apostrophe * Fixed bug PT-187: pt-table-checksum not able to get differences for columns * Fixed bug PT-186: pt-online-schema-change --alter fails if fields are using mixed case * Fixed bug PT-183: pt-mongodb-query-digest cannot connect to a db using authentication * Feature PT-182: Provide JSON output format for pt-summary, pt-mysql-summary, pt-mongodb-summary * Fixed bug PT-167: pt-kill kills prepared statements without checking busy-time * Fixed bug PT-161: Safely check for undefined values in --skip-check-slave-lag * Feature PT-152: Add Show Slave Hosts to pt-mysql-summary * Feature PT-139: Add support for replication channels (MySQL 5.7+) to pt-table-sync v3.0.4 released 2017-08-02 * Fixed bug PT-181 : pt-online-schema-change not in sync with modules (Thanks Daniël van Eeden) * Fixed bug PT-180 : pt-online-schema-change --skip-check-slave-lag doesn't work * Fixed bug PT-178 : pt-online-schema-change appears to ignore the --check-slave-lag option * Fixed bug PT-162 : Updated pt-table-checksum ignored dbs (Thanks Agustin Gallego) * Fixed bug PT-161 : Safely check for undefined values in --skip-check-slave-lag (Thanks Chris Swingler) * Fixed bug PT-154 : pt-online-schema-change --no-use-insert-ignore is broken * Fixed bug PT-153 : pt-online-schema-change data loss when adding unique keys * Fixed bug PT-151 : point is not decimal * Fixed bug PT-148 : pt-osc Use of uninitialized value in printf * Fixed bug PT-146 : Turn off statement based binlog checks * Fixed bug PT-144 : Constraint name is too long (> 64 chars) * Fixed bug PT-143 : pt-archiver SELECT query fails because of primary key * Fixed bug PT-142 : pt-online-schema-change find_child_tables slow * Fixed bug PT-138 : Added --output-format option to pt-mongodb-summary * Fixed bug PT-136 : pt-table-checksum fails with columns having different collation/charset * Feature PT-173 : Enable pt-table-checksum to ensure stale data is removed * Feature PT-141 : pt-archiver archive records into csv file * Feature PT-91 : Make pt-osc compatible with AFTER triggers * Feature PT-90 : pt-stalk: Collect information about prepared statements if P_S is enabled (Thanks Agustin Gallego) v3.0.3 released 2017-05-19 * Fixed bug PT-133 : Sandbox won't start correctly if autocommit=0 in my.cnf * Fixed bug PT-132 : pt-online-schema-change should imply --no-drop-new-table * Fixed bug PT-130 : Fixed pt-mext not working with not empty Rsa_public_key * Fixed bug PT-128 : pt-stalk ps include memory usage outputs * Fixed bug PT-126 : Recognize comments in ALTER * Fixed bug PT-116 : pt-online-schema change eats data on adding a unique index. Added --[no]use-insert-ignore * Fixed bug PT-115 : Made OptionParser to accept repeatable DSNs * Fixed bug PT-111 : Collect MySQL variables * Fixed bug PT-087 : Add --skip-check-slave-lag to pt-table-checksum * Fixed bug PT-086 : Added --skip-check-slave-lag to pt-osc * Fixed bug PT-080 : Added support for slave status in pt-stalk * Feature PT-115 : Make DSNs params able to be repeatable v3.0.2 released 2017-03-23 * Fixed bug PT-101 : pt-table-checksum ignores slave-user and slave-password * Fixed bug PT-105 : pt-table-checksum fails if a database is dropped while the tool is running * Fixed bug PT-73 : pt-mongodb tools add support for SSL connections * Fixed bug PT-74 : pt-mongodb-summary Cannot get security settings when connected to a mongod instance * Fixed bug PT-75 : pt-mongodb-query-digest Change the default sort order to -count (descending) * Fixed bug PT-76 : pt-mysql-summary password doesn't support '&' and '#' symbols * Fixed bug PT-77 : Update Makefile for mongodb tools * Fixed bug PT-81 : Collect information about locks and transactions using P_S (Thanks Agustin Gallego) * Fixed bug PT-89 : pt-stalk top CPU usage is useless * Fixed bug PT-93 : Fix pt-mongodb-query-digest query ID (Thanks Kamil Dziedzic) * Fixed bug PT-94 : pt-online-schema-change makes duplicate rows in _t_new for UPDATE t set pk=0 where pk=1 * Fixed bug PT-96 : Fixed PT tests v3.0.1 released 2017-02-16 v3.0 released 2017-02-03 * Fixed bug 1402776: Improved fix (protocol parser fix): error when parsing tcpdump capture with pt-query-digest * Fixed bug 1632522: pt-osc: Fails with duplicate key in table for self-referencing (Thanks Amiel Marqeta) * Fixed bug 1654668: pt-summary exists with an error (Thanks Marcelo Altmann) * New tool : pt-mongodb-summary * New tool : pt-mongodb-query-digest v2.2.20 released 2016-12-09 * Fixed bug 1362942: pt-slave-restart fails on MariaDB 10.0.13 (gtid_mode confusion) * Fixed bug 1566556: pt-show-grants fails against MariaDB10+ * Feature 1604834: pt-query-digest numbers in table or column names converted to question marks (--preserve-embedded-numbers) * Fixed bug 1613915: pt-online-schema-change misses data. Fixed sort order for ENUM fields * Fixed bug 1625005: pt-online-schema-change doesn't apply underscores to foreign keys individually * Fixed bug 1634900: pt-upgrade fails with SELECT INTO * Fixed bug 1635734: pt-slave-restart --config does not recognize = as separator * Feature 1636068: Added pause to NibbleIterator * Feature 1638293: --data-dir parameter in order to create the table on a different partition * Feature 1639052: with pt-table-checksum automatically exclude checking schemas named percona, percona_schema * Feature 1642364: pt-online-schema-change Added --remove-data-dir feature * Feature 1643914: Fixed several typos in the doc (Thanks Dario Minnucci) * Feature 1643940: Add Transparent huge pages info to pt-summary * Feature 1643941: Add Memory management library to pt-mysql-summary v2.2.19 released 2016-08-15 * Feature 1610385: Recheck the list of slaves while OSC runs (Thanks Daniël van Eeden & Mikhail Izioumtchenko) * Fixed bug 1221372: pt-osc should error if server is a slave in row based replication * Fixed bug 1485195: pt-table-checksum should force replica table charset to utf8 Edit (Thanks Jaime Crespo) * Fixed bug 1517155: Added --create-table-engine param to pt-heartbeat * Fixed bug 1581752: SlowLogParser is able to handle dates in RFC339 format for MySQL 5.7 (Thanks Nickolay Ihalainen) * Fixed bug 1592166: pt-kill leaks memory each time it kills a query * Fixed bug 1592608: Large BLOB/TEXT/BINARY Produces NULL Checksum (Thanks Jervin Real) * Fixed bug 1593265: Fixed pt-archiver deletes wrong rows #103 (Thanks Tibor Korocz & David Ducos) * Fixed bug 1595678: Added --slave-user and --slave-password to pt-online-schema-change & pt-table-sync * Fixed bug 1610386: Handle GTID ranges where the left-side integer is larger than 9 (Thanks @sodabrew) * Fixed bug 1610387: Remove extra word 'default' from the --verbose help (Thanks @sodabrew) * Fixed bug 1610388: add enum column type to is_char check so that values are properly quoted (Thanks Daniel Kinon) v2.2.18 released 2016-06-24 * Feature 1537416 : pt-stalk now sorts the output of transactions by id * Feature 1553340 : Added "Shared" memory info to pt-summary * Feature PT-24 : Added the --no-vertical-format option for pt-query-digest, allowing compatibility with non-standard MySQL clients that don't support the \G directive at the end of a statement * Fixed bug 1402776: Fixed error when parsing tcpdump capture with pt-query-digest * Fixed bug 1521880: Improved pt-online-schema-change plugin documentation * Fixed bug 1547225: Clarified the description of the --attribute-value-limit option for pt-query-digest * Fixed bug 1569564: Fixed all PERL-based tools to return a zero exit status when run with the --version option * Fixed bug 1576036: Fixed error that sometimes prevented to choose the primary key as index, when using the -where option for pt-table-checksum * Fixed bug 1585412: Fixed the inability of pt-query-digest to parse the general log generated by MySQL (and Percona Server) 5.7 instance * Fixed bug PT-36 : Clarified the description of the --verbose option for pt-slave-restart v2.2.17 released 2016-03-07 * Feature : General compatibility with MySQL 5.7 tools, docs and test suite * Fixed bug 1529411: pt-mysql-summary displays incorrect info about Fast Server Restarts for Percona Server 5.6 * Fixed bug 1506748: pt-online-schema-change cannot set sql_mode using --set-vars * Fixed bug 1336734: pt-online-schema-change added --null-to-non-null option to allow NULLable columns to be converted to NOT NULL * Fixed bug 1498128: pt-online-schema-change doesn't apply underscores to foreign keys individually * Fixed bug 1523685: pt-online-schema Invalid recursion method: t=dsns * Fixed bug 1526105: pt-online-schema-change fails when using --no-drop-old-table after 10 times * Fixed bug 1536305: pt-query-digest : Redundant argument in sprintf * Fixed bug PT-27 : pt-query-digest doc bug with --since and too many colons * Fixed bug PT-28 : pt-query-digest: Make documentation of --attribute-value-limit option more clear * Fixed bug 1435370: pt-show-grants fails against MySQL-5.7.6 * Fixed bug 1523730: pt-show-grants doesn't sort column-level privileges * Fixed bug 1362942: pt-slave-restart fails on MariaDB 10.0.13 (gtid_mode confusion) * Fixed bug PT-30 : pt-stalk: new var binlog_error_action causes bug in collect module * Fixed bug 1389041: pt-table-checksum has high likelihood to skip a table when row count is around chunk-size * chunk-size-limit * Fixed bug 1480719: pt-table-checksum redundant argument in printf v2.2.16 released 2015-11-09 * Fixed bug 1452895: pt-archiver dies with "MySQL server has gone away" when innodb_kill_idle_transaction set to low value and bulk insert/delete process takes too long time * Fixed bug 1488685: pt-kill option --filter does not work * Feature 1402051: pt-online-schema-change should reconnect to slaves * Fixed bug 1491261: pt-online-schema-change, MySQL 5.6, and InnoDB optimizer stats can cause downtime * Fixed bug 1494082: pt-stalk find -warn option is not portable * Feature 1389041: Document that pt-table-checksum has high likelihood to skip a table when row count is around chunk-size * chunk-size-limit v2.2.15 released 2015-08-28 * Fixed bug 1056507: pt-archiver checked lag too frequently * Fixed bug 1443763: pt-archiver clarified function of --check-interval [DOC] * Feature 1452911: pt-archiver now accepts checking lag on multiple slaves * Feature 1413137: pt-archiver now checks for PXC flow control via --max-flow-ctl option * Fixed bug 1452914: pt-archiver options --no-delete and --purge were not mutually exclusive * Fixed bug 1449226: pt-archiver mysql timed out when innodb_kill_idle_transaction set to low value and check-slave-lag used * Fixed bug 1462904: pt-duplicate-key-checker doesn't support triple quote in column name * Feature 1470127: pt-kill enable support for RDS * Fixed bug 1455486: pt-mysql-summary lacked an --ask-pass option * Feature 1413140: pt-online-schema-change added --sleep option * Fixed bug 1446928: pt-online-schema-change core dump on erroneous alter directive * Feature 1413101: pt-online-schema-change now checks for PXC flow control via --max-flow-ctl option * Fixed bug 1450499: pt-online-schema-change unstable signal handling * Feature 1215587: pt-online-schema-change now controls constraint name length * Fixed bug 1441928: pt-online-schema-change --chunk-size-limit=0 inhibited checksumming of single nibble tables * Fixed bug 1457573: pt-sift failed when fetching missing tools * Feature 1488600: pt-stalk monitors tokudb status * Fixed bug 1042727: pt-table-checksum doesn't reconnect to slaves when timed out on very long lags * Fixed bug 1277049: password parameter must escape commas - all tools [DOC] * Fixed bug BLD-271: changes needed to build packages from git tree * Fixed bug PT-21 : write-user-docs script stopped working after switching to github * Fixed bug 1488611: testing bugs related to newer perl versions v2.2.14 released 2015-04-14 * Fixed bug 1402730: pt-duplicate-key-checker seems useless with MySQL 5.6 * Fixed bug 1415646: pt-duplicate-key-checker documentation does not explain how Size Duplicate Indexes is calculated * Fixed bug 1406390: pt-heartbeat crashes with sleep argument error * Fixed bug 1368244: pt-online-schema-change --alter-foreign-keys-method=drop-swap is not atomic * FIxed bug 1417864: pt-online-schema-change documentation, the interpretation of --tries create_triggers:5:0.5,drop_triggers:5:0.5 is wrong * Fixed bug 1404313: pt-query-digest: specifying a file that doesn't exist as log causes the tool to wait for STDIN instead of giving an error * Feature 1418446: pt-slave-find resolve IP addresses option * Fixed bug 1417558: pt-stalk with --collect-strace output doesn't go to an YYYY_MM_DD_HH_mm_ss-strace file * Fixed bug 1425478: pt-stalk removes non-empty files that start with empty line * Fixed bug 925781: pt-table-checksum checksum error when default-character-set = utf8 * Fixed bug 1381280: pt-table-checksum fails on BINARY field in PK * Feature 1439842: pt-table-sync lacks --ignore-tables-regex option * Fixed bug 1401399: pt-table-sync fails to close one db handle * Fixed bug 1442277: pt-table-sync-ignores system databases but doc doesn't clarify this * Fixed bug 1421781: pt-upgrade fails on SELECT ... INTO queries * Fixed bug 1421405: pt-upgrade fails to aggregate queries based on fingerprint * Fixed bug 1439348: pt-upgrade erroneously reports number of diffs * Fixed bug 1421025: rpm missing dependency on perl-TermReadKey for --ask-pass v2.2.13 released 2015-01-26 * Feature 1391240: pt-kill added query fingerprint hash to output * Fixed bug 1402668: pt-mysql-summary fails on cluster in Donor/Desynced status * Fixed bug 1396870: pt-online-schema-change CTRL+C leaves terminal in inconsistent state * Fixed bug 1396868: pt-online-schema-change --ask-pass option error * Fixed bug 1266869: pt-stalk fails to start if $HOME environment variable is not set * Fixed bug 1019479: pt-table-checksum does not work with sql_mode ONLY_FULL_GROUP_BY * Fixed bug 1394934: pt-table-checksum error in debug mode * Fixed bug 1321297: pt-table-checksum reports diffs on timestamp columns in 5.5 vs 5.6 * Fixed bug 1399789: pt-table-checksum fails to find pxc nodes when wsrep_node_incoming_address is set to AUTO * Fixed bug 1388870: pt-table-checksum has some errors with different time zones * Fixed bug 1408375: vulnerable to MITM attack which would allow exfiltration of MySQL configuration information via --version-check * Fixed bug 1404298: missing MySQL5.7 test files for pt-table-checksum * Fixed bug 1403900: added sandbox and fixed sakila test db for 5.7 v2.2.12 released 2014-11-14 * Fixed bug 1376561: pt-archiver is not able to archive all the rows when a table has a hash partition * Fixed bug 1328686: pt-heartbeat check-read-only option does not prevent creates or inserts * Fixed bug 1269695: pt-online-schema-change does not allow ALTER for a table without a non-unique, while manual does not explain this * Fixed bug 1217466: pt-table-checksum refuses to run on PXC if server_id is the same on all nodes * Fixed bug 1373937: pt-table-checksum requires recursion when working with and XtraDB Cluster node * Fixed bug 1377888: pt-query-digest manual for --type binlog is ambiguous * Fixed bug 1349086: pt-stalk should also gather dmesg output * Fixed bug 1361293: Some scripts fail when no-version-check option is put in global config file v2.2.11 released 2014-09-26 * Fixed bug 1262456: pt-query-digest doesn't report host details * Fixed bug 1264580: pt-mysql-summary incorrectly tries to parse key/value pairs in wsrep_provider_options resulting in incomplete my.cnf information * Fixed bug 1318985: pt-stalk should use SQL_NO_CACHE * Fixed bug 1348679: pt-stalk handles mysql user password in awkward way * Fixed bug 1365085: Various issues with tests * Fixed bug 1368379: pt-summary problem parsing dmidecode output on some machines * Fixed bug 1303388: Typo in pt-variable-advisor v2.2.10 released 2014-08-06 * Fixed bug 1287253: pt-table-checksum deadlock * Fixed bug 1299387: 5.6 slow query log Thead_id becomes Id * Fixed bug 1311654: pt-table-checksum + PXC inconsistent results upon --resume * Fixed bug 1340728: pt-online-schema-change doesn't work with HASH indexes * Fixed bug 1253872: pt-table-checksum max load 20% rounds down * Fixed bug 1340364: some shell tools output error when queried for --version v2.2.9 released 2014-07-08 * Fixed bug 1258135: pt-deadlock-logger introduces a noise to MySQL * Fixed bug 1329422: pt-online-schema-change foreign-keys-method=none breaks constraints * Fixed bug 1315130: pt-online-schema-change not properly detecting foreign keys * Fixed bug 1335960: pt-query-digest cannot parse binlogs from 5.6 * Fixed bug 1335322: pt-stalk fails when variable or threshold is non-integer v2.2.8 released 2014-06-04 * Removed pt-agent * Added pt-slave-restart GTID support * Added pt-table-checksum --plugin * Fixed bug 1304062: --ignore-tables does not work correctly * Fixed bug 1295667: pt-deadlock-logger logs incorrect ts * Fixed bug 1254233: pt-mysql-summary blank InnoDB section for 5.6 * Fixed bug 1286250: pt-online-schema-change requests password twice * Fixed bug 965553: pt-query-digest dosn't fingerprint true/false literals correctly * Fixed bug 290911: pt-show-grant --ask-pass prints "Enter password" to STDOUT v2.2.7 released 2014-02-20 * Fixed bug 1279502: --version-check behaves like spyware v2.2.6 released 2013-12-18 * Added pt-query-digest support for Percona Server slow log rate limiting * Added pt-agent --ping * Added pt-mysql-summary --all-databases * Added pt-stalk --sleep-collect * Added pt-table-sync --[no]check-child-tables * Fixed bug 1249150: PTDEBUG prints some info to STDOUT * Fixed bug 1248363: pt-agent requires restart after changing MySQL options * Fixed bug 1248778: pt-agent --install on PXC is not documented * Fixed bug 1250973: pt-agent --install doesn't check for previous install * Fixed bug 1250968: pt-agent --install suggest MySQL user isn't quoted * Fixed bug 1251004: pt-agent --install error about slave is confusing * Fixed bug 1251726: pt-agent --uninstall fails if agent is running * Fixed bug 1248785: pt-agent docs don't list privs required for its MySQL user * Fixed bug 1215016: pt-deadlock-logger docs use pt-fk-error-logger * Fixed bug 1201443: pt-duplicate-key-checker error when EXPLAIN key_len=0 * Fixed bug 1217013: pt-duplicate-key-checker misses exact duplicate unique indexes * Fixed bug 1214685: pt-mysql-summary schema dump prompt can't be disabled * Fixed bug 1195628: pt-online-schema-change gets stuck looking for its own _new table * Fixed bug 1249149: pt-query-digest stats prints to STDOUT instead of STDERR * Fixed bug 1071979: pt-stak error parsing df with NFS * Fixed bug 1223458: pt-table-sync deletes child table rows v2.2.5 released 2013-10-16 * Added Query_time histogram bucket counts to pt-query-digest JSON output * Added pt-online-schema-change --[no]drop-triggers option * Fixed bug 1206677: pt-agent docs reference clodu.percona.com * Fixed bug 1226721: pt-agent on CentOS 5 fails to send data * Fixed bug 1199589: pt-archiver deletes data despite --dry-run * Fixed bug 1206728: pt-deadlock-logger 2.2 requires DSN on command line * Fixed bug 1209436: pt-kill --log-dsn may not work on Perl 5.8 * Fixed bug 1215608: pt-online-schema-change new table suffix is hard-coded * Fixed bug 821692: pt-query-digest doesn't distill LOAD DATA correctly * Fixed bug 984053: pt-query-digest doesn't distill INSERT/REPLACE without INTO correctly * Fixed bug 821690: pt-query-digest doesn't distill IF EXISTS correctly * Fixed bug 1210537: pt-table-checksum --recursion-method=cluster crashes if no nodes are found * Fixed bug 944051: pt-table-checksum has ambiguous exit status * Fixed bug 1229861: pt-table-sync quotes float values, can't sync v2.2.4 released 2013-07-18 * Implemented pt-query-digest anonymous JSON output * Implemented pt-online-schema-change timestamp output * Fixed bug 1182856: Zero values causes "Invalid --set-vars value: var=0" * Fixed bug 1195034: pt-deadlock-logger error: Use of uninitialized value $ts in pattern match (m//) * Fixed bug 1137556: pt-heartbeat docs don't account for --utc * Fixed bug 1188264: pt-online-schema-change error copying rows: Undefined subroutine &pt_online_schema_change::get * Fixed bug 1171968: pt-query-digest docs don't mention --type=rawlog * Fixed bug 1176010: pt-query-digest doesn't group db and `db` together * Fixed bug 1174956: pt-query-digest and pt-fingerprint don't strip some multi-line comments * Fixed bug 1172317: pt-sift does not work if pt-stalk did not collect due to a full disk * Fixed bug 1136559: pt-table-checksum: Deep recursion on subroutine "SchemaIterator::_iterate_dbh" * Fixed bug 1199591: pt-table-checksum doesn't use non-unique index with highest cardinality * Fixed bug 1163735: pt-table-checksum fails if explicit_defaults_for_timestamp is enabled in 5.6 * Fixed bug 1168434: pt-upgrade reports differences on NULL * Fixed bug 1168106: pt-variable-advisor has the wrong default value for innodb_max_dirty_pages_pct in 5.5 and 5.6 * Fixed bug 1168110: pt-variable-advisor shows key_buffer_size in 5.6 as unconfigured (even though it is) v2.2.3 released 2013-06-17 * Added new tool: pt-agent * Fixed bug 1188002: pt-online-schema-change causes "ERROR 1146 (42S02): Table 'db._t_new' doesn't exist" v2.2.2 released 2013-04-24 * Added --show-all to pt-query-digest * Added --recursion-method=cluster to pt-table-checksum * Fixed bug 1127450: pt-archiver --bulk-insert may corrupt data * Fixed bug 1163372: pt-heartbeat --utc --check always returns 0 * Fixed bug 1156901: pt-query-digest --processlist reports duplicate queries for replication thread * Fixed bug 1160338: pt-query-digest 2.2 prints unwanted debug info on tcpdump parsing errors * Fixed bug 1160918: pt-query-digest 2.2 prints too many string values * Fixed bug 1156867: pt-stalk prints the wrong variable name in verbose mode when --function is used * Fixed bug 1081733: pt-stalk plugins can't access the real --prefix * Fixed bug 1099845: pt-table-checksum pxc same_node function incorrectly uses wsrep_sst_receive_address * Fixed bug 821502: Some tools don't have --help or --version * Fixed bug 947893: Some tools use @@hostname without /*!50038*/ * Fixed bug 1082406: An explicitly set wsrep_node_incoming_address may make SHOW STATUS LIKE 'wsrep_incoming_addresses' return a portless address v2.2.1 released 2013-03-14 * Official support for MySQL 5.6 * Official support for Percona XtraDB Cluster * Redesigned pt-query-digest * Redesigned pt-upgrade * Redesigned pt-fk-error-logger * Redesigned pt-deadlock-logger * Changed --set-vars in all tools * Renamed --retries to --tries in pt-online-schema-change * Added --check-read-only to pt-heartbeat * Added MySQL options to pt-mysql-summary * Added MySQL options to pt-stalk * Removed --lock-wait-timeout from pt-online-schema-change (use --set-vars) * Removed --lock-wait-timeout from pt-table-checksum (use --set-vars) * Removed pt-query-advisor * Removed pt-tcp-model * Removed pt-trend * Removed pt-log-player * Enabled --version-check by default in all tools * Fixed bug 1008796: Several tools don't have --database * Fixed bug 1087319: Quoter::serialize_list() doesn't handle multiple NULL values * Fixed bug 1086018: pt-config-diff needs to parse wsrep_provider_options * Fixed bug 1056838: pt-fk-error-logger --run-time works differently than pt-deadlock-logger --run-time * Fixed bug 1093016: pt-online-schema-change doesn't retry RENAME TABLE * Fixed bug 1113301: pt-online-schema-change blocks on metadata locks * Fixed bug 1125665: pt-stalk --no-stalk silently clobbers other options, acts magically * Fixed bug 1019648: pt-stalk truncates InnoDB status if there are too many transactions * Fixed bug 1087804: pt-table-checksum doesn't warn if no slaves are found v2.1.9 released 2013-02-14 * Fixed bug 1103221: pt-heartbeat 2.1.8 doesn't use precision/sub-second timestamps * Fixed bug 1099665: pt-heartbeat 2.1.8 reports big time drift with UTC_TIMESTAMP * Fixed bug 1099836: pt-online-schema-change fails with "Duplicate entry" on MariaDB * Fixed bug 1103672: pt-online-schema-change makes bad DELETE trigger if PK is re-created with new columns * Fixed bug 1115333: pt-pmp doesn't list the origin lib for each function * Fixed bug 823411: pt-query-digest shouldn't print "Error: none" for tcpdump * Fixed bug 1103045: pt-query-digest fails to parse non-SQL errors * Fixed bug 1105077: pt-table-checksum: Confusing error message with binlog_format ROW or MIXED on slave * Fixed bug 918056: pt-table-sync false-positive error "Cannot nibble table because MySQL chose no index instead of the PRIMARY index" * Fixed bug 1099933: pt-stalk is too verbose, fills up log v2.1.8 released 2012-12-21 * Beta support for MySQL 5.6 * Beta support for Percona XtraDB Cluster * pt-online-schema-change: If ran on Percona XtraDB Cluster, requires PXC 5.5.28 or newer * pt-table-checksum: If ran on Percona XtraDB Cluster, requires PXC 5.5.28 or newer * pt-upgrade: Added --[no]disable-query-cache * Fixed bug 927955: Bad pod2rst transformation * Fixed bug 898665: Bad online docs formatting for --[no]vars * Fixed bug 1022622: pt-config-diff is case-sensitive * Fixed bug 1007938: pt-config-diff doesn't handle end-of-line comments * Fixed bug 917770: pt-config-diff Use of uninitialized value in substitution (s///) at line 1996 * Fixed bug 1082104: pt-deadlock-logger doesn't handle usernames with dashes * Fixed bug 886059: pt-heartbeat handles timezones inconsistently * Fixed bug 1086259: pt-kill --log-dsn timestamp is wrong * Fixed bug 1015590: pt-mysql-summary doesn't handle renamed variables in Percona Server 5.5 * Fixed bug 1079341: pt-online-schema-change checks for foreign keys on MyISAM tables * Fixed bug 823431: pt-query-advisor hangs on big queries * Fixed bug 996069: pt-query-advisor RES.001 is incorrect * Fixed bug 933465: pt-query-advisor false positive on RES.001 * Fixed bug 937234: pt-query-advisor issues wrong RES.001 * Fixed bug 1082599: pt-query-digest fails to parse timestamp with no query * Fixed bug 1078838: pt-query-digest doesn't parse general log with "Connect user as user" * Fixed bug 957442: pt-query-digest with custom --group-by throws error * Fixed bug 887638: pt-query-digest prints negative byte offset * Fixed bug 831525: pt-query-digest help output mangled * Fixed bug 932614: pt-slave-restart CHANGE MASTER query causes error * Fixed bug 1046440: pt-stalk purge_samples slows down checks * Fixed bug 986847: pt-stalk does not report NFS iostat * Fixed bug 1074179: pt-table-checksum doesn't ignore tables for --replicate-check-only * Fixed bug 911385: pt-table-checksum v2 fails when --resume + --ignore-database is used * Fixed bug 1041391: pt-table-checksum debug statement for "Chosen hash func" prints undef * Fixed bug 1075638: pt-table-checksum Illegal division by zero at line 7950 * Fixed bug 1052475: pt-table-checksum uninitialized value in numeric lt (<) at line 8611 * Fixed bug 1078887: Tools let --set-vars clobber the required SQL mode v2.1.7 released 2012-11-19 * Fixed bug 1080384: pt-table-checksum 2.1.6 crashes using PTDEBUG * Fixed bug 1080385: pt-table-checksum 2.1.6 --check-binlog-format doesn't ignore PXC nodes v2.1.6 released 2012-11-13 * pt-online-schema-change: Columns can now be renamed without data loss * pt-online-schema-change: New --default-engine option * pt-stalk: Plugin hooks available through the --plugin option to extend the tool's functionality * Fixed bug 1069951: --version-check default should be explicitly "off" * Fixed bug 821715: LOAD DATA LOCAL INFILE broken in some platforms * Fixed bug 995896: Useless use of cat in Daemon.pm * Fixed bug 1039074: Tools exit 0 on error parsing options, should exit non-zero * Fixed bug 938068: pt-table-checksum doesn't warn if binlog_format=row or mixed on slaves * Fixed bug 1009510: pt-table-checksum breaks replication if a slave table is missing or different * Fixed bug 1043438: pt-table-checksum doesn't honor --run-time while checking replication lag * Fixed bug 1073532: pt-table-checksum error: Use of uninitialized value in int at line 2778 * Fixed bug 1016131: pt-table-checksum can crash with --columns if none match * Fixed bug 1039569: pt-table-checksum dies if creating the --replicate table fails * Fixed bug 1059732: pt-table-checksum doesn't test all hash functions * Fixed bug 1062563: pt-table-checksum 2.1.4 doesn't detect diffs on Percona XtraDB Cluster nodes * Fixed bug 1043528: pt-deadlock-logger can't parse db/tbl/index on partitioned tables * Fixed bug 1062324: pt-online-schema-change DELETE trigger fails when altering primary key * Fixed bug 1058285: pt-online-schema-change fails if sql_mode explicitly or implicitly uses ANSI_QUOTES * Fixed bug 1073996: pt-online-schema-change fails with "I need a max_rows argument" * Fixed bug 1039541: pt-online-schema-change --quiet doesn't disable --progress * Fixed bug 1045317: pt-online-schema-change doesn't report how many warnings it suppressed * Fixed bug 1060774: pt-upgrade fails if select column > 64 chars * Fixed bug 1070916: pt-mysql-summary may report the wrong cnf file * Fixed bug 903229: pt-mysql-summary incorrectly categorizes databases * Fixed bug 866075: pt-show-grant doesn't support column-level grants * Fixed bug 978133: pt-query-digest review table privilege checks don't work * Fixed bug 956981: pt-query-digest docs for event attributes link to defunct Maatkit wiki * Fixed bug 1047335: pt-duplicate-key-checker fails when it encounters a crashed table * Fixed bug 1047701: pt-stalk deletes non-empty files * Fixed bug 1070434: pt-stalk --no-stalk and --iterations 1 don't wait for the collect * Fixed bug 1052722: pt-fifo-split is processing n-1 rows initially * Fixed bug 1013407: pt-find documentation error with mtime and InnoDB * Fixed bug 1059757: pt-trend output has no header * Fixed bug 1063933: pt-visual-explain docs link to missing pdf * Fixed bug 1075773: pt-fk-error-logger crashes if there's no foreign key error * Fixed bug 1075775: pt-fk-error-logger --dest table example doesn't work v2.1.5 released 2012-10-08 * Fixed bug 1062563: pt-table-checksum 2.1.4 doesn't detect diffs on Percona XtraDB Cluster nodes * Fixed bug 1063912: pt-table-checksum 2.1.4 miscategorizes Percona XtraDB Cluster-based slaves as cluster nodes * Fixed bug 1064016: pt-table-sync 2.1.4 --version-check may not work with HTTPS/SSL * Fixed bug 1060423: Missing version-check page v2.1.4 released 2012-09-20 * pt-table-checksum: Percona XtraDB Cluster support * pt-table-checksum: Implemented the standard --run-time option * Implemented the version-check feature in several tools, enabled with the --version-check option * Fixed bug 856060: Document gdb dependency * Fixed bug 1041394: Unquoted arguments to tr break the bash tools * Fixed bug 1035311: pt-diskstats shows wrong device names * Fixed bug 1036804: pt-duplicate-key-checker error parsing InnoDB table with no PK or unique keys * Fixed bug 1022658: pt-online-schema-change dropping FK limitation isn't documented * Fixed bug 1041372: pt-online-schema-changes fails if db+tbl name exceeds 64 characters * Fixed bug 1029178: pt-query-digest --type tcpdump memory usage keeps increasing * Fixed bug 1037211: pt-query-digest won't distill LOCK TABLES in lowercase * Fixed bug 942114: pt-stalk warns about bad "find" usage * Fixed bug 1035319: pt-stalk df -h throws away needed details * Fixed bug 1038995: pt-stalk --notify-by-email fails * Fixed bug 1038995: pt-stalk does not get all InnoDB lock data * Fixed bug 952722: pt-summary should show information about Fusion-io cards * Fixed bug 899415: pt-table-checksum doesn't work if slaves use RBR * Fixed bug 954588: pt-table-checksum --check-slave-lag docs aren't clear * Fixed bug 1034170: pt-table-checksum --defaults-file isn't used for slaves * Fixed bug 930693: pt-table-sync and text columns with just whitespace * Fixed bug 1028710: pt-table-sync base_count fails on n = 1000, base = 10 * Fixed bug 1034717: pt-table-sync division by zero error with varchar primary key * Fixed bug 1036747: pt-table-sync priv checks need to be removed * Fixed bug 1039184: pt-upgrade error "I need a right_sth argument" * Fixed bug 1035260: sh warnings in pt-summary and pt-mysql-summary * Fixed bug 1038276: ChangeHandler doesn't quote varchar columns with hex-looking values * Fixed bug 916925: CentOS 5 yum dependency resolution for perl module is wrong * Fixed bug 1035950: Percona Toolkit RPM should contain a dependency on perl-Time-HiRes v2.1.3 released 2012-08-03 * pt-kill: Implemented --log-dsn to log info about killed queries to a table * Fixed bug 1016127: Install hint for DBD::mysql is wrong * Fixed bug 984915: DSNParser does not check success of --set-vars * Fixed bug 889739: pt-config-diff doesn't diff quoted strings properly * Fixed bug 969669: pt-duplicate-key-checker --key-types=k doesn't work * Fixed bug 1004567: pt-heartbeat --update --replace causes duplicate key error * Fixed bug 1028614: pt-index-usage ignores --database * Fixed bug 940733: pt-ioprofile leaves behind temp directory * Fixed bug 941469: pt-kill doesn't reconnect if its connection is lost * Fixed bug 1016114: pt-online-schema-change docs don't mention default values * Fixed bug 1020997: pt-online-schema-change fails when table is empty * Fixed bug 1022628: pt-online-schema-change error: Use of uninitialized value in numeric lt (<) at line 6519 * Fixed bug 937225: pt-query-advisor OUTER JOIN advice in JOI.003 is confusing * Fixed bug 821703: pt-query-digest --processlist may crash * Fixed bug 883098: pt-query-digest crashes if processlist has extra columns * Fixed bug 924950: pt-query-digest --group-by db may crash profile report * Fixed bug 1022851: pt-sift error: PREFIX: unbound variable * Fixed bug 969703: pt-sift defaults to '.' instead of '/var/lib/pt-talk' * Fixed bug 962330: pt-slave-delay incorrectly computes lag if started when slave is already lagging * Fixed bug 954990: pt-stalk --nostalk does not work * Fixed bug 977226: pt-summary doesn't detect LSI RAID control * Fixed bug 1030031: pt-table-checksum reports wrong number of DIFFS * Fixed bug 916168: pt-table-checksum privilege check fails on MySQL 5.5 * Fixed bug 950294: pt-table-checksum should always create schema and tables with IF NOT EXISTS * Fixed bug 953141: pt-table-checksum ignores its default and explicit --recursion-method * Fixed bug 1030975: pt-table-sync crashes if sql_mode includes ANSI_QUOTES * Fixed bug 869005: pt-table-sync should always set REPEATABLE READ * Fixed bug 903510: pt-tcp-model crashes in --type=requests mode on empty file * Fixed bug 934310: pt-tcp-model --quantile docs wrong * Fixed bug 980318: pt-upgrade results truncated if hostnames are long * Fixed bug 821696: pt-variable-advisor shows too long of a snippet * Fixed bug 844880: pt-variable-advisor shows binary logging as both enabled and disabled v2.1.2 released 2012-06-12 * pt-heartbeat: Implemented --recursion-method=none * pt-index-usage: MySQL 5.5 compatibility fixes * pt-log-player: MySQL 5.5 compatibility fixes * pt-online-schema-change: Added --chunk-index-columns * pt-online-schema-change: Added --[no]check-plan * pt-online-schema-change: Added --[no]drop-new-table * pt-online-schema-change: Implemented --recursion-method=none * pt-query-advisor: Added --report-type for JSON output * pt-query-digest: Removed --[no]zero-bool * pt-slave-delay: Added --database * pt-slave-find: Implemented --recursion-method=none * pt-slave-restart: Implemented --recursion-method=none * pt-table-checksum: Added --chunk-index-columns * pt-table-checksum: Added --[no]check-plan * pt-table-checksum: Implemented --recursion-method=none * pt-table-sync: Disabled --lock-and-rename except for MySQL 5.5 and newer * pt-table-sync: Implemented --recursion-method=none * Fixed bug 945079: Shell tools TMPDIR may break * Fixed bug 912902: Some shell tools still use basename * Fixed bug 987694: There is no --recursion-method=none option * Fixed bug 886077: Passwords with commas don't work, expose part of password * Fixed bug 856024: Lintian warnings when building percona-toolkit Debian package * Fixed bug 903379: pt-archiver --file doesn't create a file * Fixed bug 979092: pt-archiver --sleep conflicts with bulk operations * Fixed bug 903443: pt-deadlock-logger crashes on MySQL 5.5 * Fixed bug 941064: pt-deadlock-logger can't clear deadlocks on 5.5 * Fixed bug 952727: pt-diskstats shows incorrect wr_mb_s * Fixed bug 994176: pt-diskstats --group-by=all --headers=scroll prints a header for every sample * Fixed bug 894140: pt-duplicate-key-checker sometimes recreates a key it shouldn't * Fixed bug 923896: pt-kill: uninitialized value causes script to exit * Fixed bug 1003003: pt-online-schema-change uses different keys for chunking and triggers * Fixed bug 1003315: pt-online-schema-change --dry-run always fails on table with foreign keys * Fixed bug 1004551: pt-online-schema-change --no-swap-tables causes error * Fixed bug 976108: pt-online-schema-change doesn't allow to disable foreign key checks * Fixed bug 976109: pt-online-schema-change doesn't handle column renames * Fixed bug 988036: pt-online-schema-change causes deadlocks under heavy write load * Fixed bug 989227: pt-online-schema-change crashes with PTDEBUG * Fixed bug 994002: pt-online-schema-change 2.1.1 doesn't choose the PRIMARY KEY * Fixed bug 994010: pt-online-schema-change 2.1.1 crashes without InnoDB * Fixed bug 996915: pt-online-schema-change crashes with invalid --max-load and --critical-load * Fixed bug 998831: pt-online-schema-change -- Should have an option to NOT drop tables on failure * Fixed bug 1002448: pt-online-schema-change: typo for finding usable indexes * Fixed bug 885382: pt-query-digest --embedded-attributes doesn't check cardinality * Fixed bug 888114: pt-query-digest report crashes with infinite loop * Fixed bug 949630: pt-query-digest mentions a Subversion repository * Fixed bug 844034: pt-show-grants --separate fails with proxy user * Fixed bug 946707: pt-sift loses STDIN after pt-diskstats * Fixed bug 994947: pt-stalk doesn't reset cycles_true after collection * Fixed bug 986151: pt-stalk-has mktemp error * Fixed bug 993436: pt-summary Memory: Total reports M instead of G * Fixed bug 1008778: pt-table-checksum doesn't wait for checksum table to replicate * Fixed bug 1010232: pt-table-checksum doesn't check the size of checksum chunks * Fixed bug 1011738: pt-table-checksum SKIPPED is zero but chunks were skipped * Fixed bug 919499: pt-table-checksum fails with binary log error in mysql >= 5.5.18 * Fixed bug 972399: pt-table-checksum docs are not rendered right * Fixed bug 978432: pt-table-checksum ignoring primary key * Fixed bug 995274: pt-table-checksum can't use an undefined value as an ARRAY reference at line 2206 * Fixed bug 996110: pt-table-checksum crashes if InnoDB is disabled * Fixed bug 987393: pt-table-checksum: Empty tables cause "undefined value as an ARRAY" errors * Fixed bug 997155: pt-table-sync sets binlog_format needlessly * Fixed bug 1002365: pt-table-sync --ignore-* options don't work with --replicate * Fixed bug 1003014: pt-table-sync --replicate and --sync-to-master error "index does not exist" * Fixed bug 823403: pt-table-sync --lock-and-rename doesn't work on 5.1 * Fixed bug 898138: pt-variable-advisor doesn't recognize 5.5.3+ concurrent_insert values v2.1.1 released 2012-04-03 * Completely redesigned pt-online-schema-change * Completely redesigned pt-mysql-summary * Completely redesigned pt-summary * Added new tool: pt-table-usage * Added new tool: pt-fingerprint * Fixed bug 955860: pt-stalk doesn't run vmstat, iostat, and mpstat for --run-time * Fixed bug 960513: SHOW TABLE STATUS is used needlessly * Fixed bug 969726: pt-online-schema-change loses foreign keys * Fixed bug 846028: pt-online-schema-change does not show progress until completed * Fixed bug 898695: pt-online-schema-change add useless ORDER BY * Fixed bug 952727: pt-diskstats shows incorrect wr_mb_s * Fixed bug 963225: pt-query-digest fails to set history columns for disk tmp tables and disk filesort * Fixed bug 967451: Char chunking doesn't quote column name * Fixed bug 972399: pt-table-checksum docs are not rendered right * Fixed bug 896553: Various documentation spelling fixes * Fixed bug 949154: pt-variable-advisor advice for relay-log-space-limit * Fixed bug 953461: pt-upgrade manual broken 'output' section * Fixed bug 949653: pt-table-checksum docs don't mention risks posed by inconsistent schemas v2.0.4 released 2012-03-07 * Added --filter to pt-kill to allow arbitrary --group-by * Added --[no]stalk to pt-stalk (bug 932331) * Added --execute to pt-online-schema-change (bug 933232) * Fixed bug 873598: pt-online-schema-change doesn't like reserved words in column names * Fixed bug 928966: pt-pmp still uses insecure /tmp * Fixed bug 933232: pt-online-schema-change can break replication * Fixed bug 941225: Use of qw(...) as parentheses is deprecated at pt-kill line 3511 * Fixed bug 821694: pt-query-digest doesn't recognize hex InnoDB txn IDs * Fixed bug 894255: pt-kill shouldn't check if STDIN is a tty when --daemonize is given * Fixed bug 916999: pt-table-checksum error: DBD::mysql::st execute failed: called with 2 bind variables when 6 are needed * Fixed bug 926598: DBD::mysql bug causes pt-upgrade to use wrong precision (M) and scale (D) * Fixed bug 928226: pt-diskstats illegal division by zero * Fixed bug 928415: Typo in pt-stalk doc: --trigger should be --function * Fixed bug 930317: pt-archiver doc refers to nonexistent pt-query-profiler * Fixed bug 930533: pt-sift looking for *-processlist1; broken compatibility with pt-stalk * Fixed bug 932331: pt-stalk cannot collect without stalking * Fixed bug 932442: pt-table-checksum error when column name has two spaces * Fixed bug 932883: File Debian bug after each release * Fixed bug 940503: pt-stalk disk space checks wrong on 32bit platforms * Fixed bug 944420: --daemonize doesn't always close STDIN * Fixed bug 945834: pt-sift invokes pt-diskstats with deprecated argument * Fixed bug 945836: pt-sift prints awk error if there are no stack traces to aggregate * Fixed bug 945842: pt-sift generates wrong state sum during processlist analysis * Fixed bug 946438: pt-query-digest should print a better message when an unsupported log format is specified * Fixed bug 946776: pt-table-checksum ignores --lock-wait-timeout * Fixed bug 940440: Bad grammar in pt-kill docs v2.0.3 released 2012-02-03 * Completely redesigned pt-diskstats * Completely redesigned pt-stalk * Removed pt-collect and put its functionality in pt-stalk * Fixed bug 871438: Bash tools are insecure * Fixed bug 897758: Failed to prepare TableSyncChunk plugin: Use of uninitialized value $args{"chunk_range"} in lc at pt-table-sync line 3055 * Fixed bug 919819: pt-kill --execute-command creates zombies * Fixed bug 925778: pt-ioprofile doesn't run without a file * Fixed bug 925477: pt-ioprofile docs refer to pt-iostats * Fixed bug 857091: pt-sift downloads http://percona.com/get/pt-pmp, which does not work * Fixed bug 857104: pt-sift tries to invoke mext, should be pt-mext * Fixed bug 872699: pt-diskstats: rd_avkb & wr_avkb derived incorrectly * Fixed bug 897029: pt-diskstats computes wrong values for md0 * Fixed bug 882918: pt-stalk spams warning if oprofile isn't installed * Fixed bug 884504: pt-stalk doesn't check pt-collect * Fixed bug 897483: pt-online-schema-change "uninitialized value" due to update-foreign-keys-method * Fixed bug 925007: pt-online-schema-change Use of uninitialized value $tables{"old_table"} in concatenation (.) or string at line 4330 * Fixed bug 915598: pt-config-diff ignores --ask-pass option * Fixed bug 919352: pt-table-checksum changes binlog_format even if already set to statement * Fixed bug 921700: pt-table-checksum doesn't add --where to chunk size test on replicas * Fixed bug 921802: pt-table-checksum does not recognize --recursion-method=processlist * Fixed bug 925855: pt-table-checksum index check is case-sensitive * Fixed bug 821709: pt-show-grants --revoke and --separate don't work together * Fixed bug 918247: Some tools use VALUE instead of VALUES v2.0.2 released 2012-01-05 * Fixed bug 911996: pt-table-sync --replicate causes "Unknown column" error v2.0.1 released 2011-12-30 * Completely redesigned pt-table-checksum * Fixed bug 856065: pt-trend does not work * Fixed bug 887688: Prepared statements crash pt-query-digest * Fixed bug 888286: align not part of percona-toolkit * Fixed bug 897961: ptc 2.0 replicate-check error does not include hostname * Fixed bug 898318: ptc 2.0 --resume with --tables does not always work * Fixed bug 903513: MKDEBUG should be PTDEBUG * Fixed bug 908256: Percona Toolkit should include pt-ioprofile * Fixed bug 821717: pt-tcp-model --type=requests crashes * Fixed bug 844038: pt-online-schema-change documentation example w/drop-tmp-table does not work * Fixed bug 864205: Remove the query to reset @crc from pt-table-checksum * Fixed bug 898663: Typo in pt-log-player documentation v1.0.1 released 2011-09-01 * Fixed bug 819421: MasterSlave::is_replication_thread() doesn't match all * Fixed bug 821673: pt-table-checksum doesn't include --where in min max queries * Fixed bug 821688: pt-table-checksum SELECT MIN MAX for char chunking is wrong * Fixed bug 838211: pt-collect: line 24: [: : integer expression expected * Fixed bug 838248: pt-collect creates a "5.1" file v0.9.5 released 2011-08-04 * Forked, combined, and rebranded Maatkit and Aspersa as Percona Toolkit.