Percona Server Changelog

New in version 5.6.23-72.1

March 7th, 2015
  • Based on MySQL 5.6.23, including all the bug fixes in it, Percona Server 5.6.23-72.1 is the current GA release in the Percona Server 5.6 series. Percona Server is open-source and free – and this is the latest release of our enhanced, drop-in replacement for MySQL.

New in version 5.6.22-72.0 (February 7th, 2015)

  • Based on MySQL 5.6.22, including all the bug fixes in it, Percona Server 5.6.22-72.0 is the current GA release in the Percona Server 5.6 series. Percona Server is open-source and free – and this is the latest release of our enhanced, drop-in replacement for MySQL.

New in version 5.6.22-71.0 (January 13th, 2015)

  • Based on MySQL 5.6.22, including all the bug fixes in it, Percona Server 5.6.22-71.0 is the current GA release in the Percona Server 5.6 series. Percona Server is open-source and free – and this is the latest release of our enhanced, drop-in replacement for MySQL.

New in version 5.6.21-70.1 (November 24th, 2014)

  • Based on MySQL 5.6.21, including all the bug fixes in it, Percona Server 5.6.21-70.1 is the current GA release in the Percona Server 5.6 series.

New in version 5.6.21-70.0 (October 31st, 2014)

  • Based on MySQL 5.6.21, including all the bug fixes in it, Percona Server 5.6.21-70.0 is the current GA release in the Percona Server 5.6 series.

New in version 5.5.35-33.0 (December 23rd, 2013)

  • Based on MySQL 5.5.35, including all the bug fixes in it, Percona Server 5.5.35-33.0 is now the current stable release in the 5.5 series.

New in version 5.1.73-14.11 (December 21st, 2013)

  • Based on MySQL 5.1.73, including all the bug fixes in it, Percona Server 5.1.73-14.11 is now the current stable release in the 5.1 series.

New in version 5.6.15-63.0 (December 20th, 2013)

  • Based on MySQL 5.6.15, including all the bug fixes in it, Percona Server 5.6.15-63.0 is the current GA release in the Percona Server 5.6 series.

New in version 5.5.34-32.0 (October 28th, 2013)

  • This release is based on MySQL 5.5.34, including all the bug fixes in it, Percona Server 5.5.34-32.0 is now the current stable release in the 5.5 series.

New in version 5.1.72-14.10 (October 28th, 2013)

  • Due to an incompatible upstream change that went in unnoticed, the page cleaner thread would attempt to replay any file operations it encountered. In most cases this were a no-op, but there were race conditions for certain DDL operations that would have resulted in server crash. Bug fixed #1217002.
  • apt-get upgrade of Percona Server would fail in post-installation step if server failed to start. Bug fixed #1002500.
  • Fixed the libssl.so.6 dependency issues in binary tarballs releases. Bug fixed #1172916.
  • Percona Server could crash server could crash while accessing BLOB or TEXT columns in InnoDB tables if Support for Fake Changes was enabled. Bug fixed #1188168.
  • A server could crash due to a race condition between a INNODB_CHANGED_PAGES query and a bitmap file delete by PURGE CHANGED_PAGE_BITMAP or directly on the file system. Bug fixed #1191580.

New in version 5.6.13-61.0 (October 9th, 2013)

  • Based on MySQL 5.6.13, including all the bug fixes in it, Percona Server 5.6.13-61.0 is the first GA release in the Percona Server 5.6 series.

New in version 5.6.13-60.6 RC4 (September 23rd, 2013)

  • Based on MySQL 5.6.13, including all the bug fixes in it, Percona Server 5.6.13-60.6 is the fourth RC release in the Percona Server 5.6 series.

New in version 5.6.13-60.5 RC3 (August 30th, 2013)

  • Percona is glad to announce the third Release Candidate of Percona Server 5.6.13-60.5 on August 29, 2013 (downloads are available here and from the Percona Software Repositories). Based on the recently released MySQL 5.6.13, including all the bug fixes in it, Percona Server 5.6.13-60.5 is the third RC release in the Percona Server 5.6 series. Percona Server is an enhanced, drop-in MySQL replacement. All of Percona‘s software is open-source and free, all the details of the release can be found in the 5.6.13-60.5 milestone at Launchpad.

New in version 5.5.33-31.1 (August 28th, 2013)

  • Based on MySQL 5.5.33, including all the bug fixes in it, Percona Server 5.5.33-31.1 is now the current stable release in the 5.5 series.

New in version 5.1.71-14.9 (August 28th, 2013)

  • Based on MySQL 5.1.71, this release will include all the bug fixes in it.

New in version 5.1.70-14.8 (July 4th, 2013)

  • Bugs Fixed:
  • Prevented a race condition that could lead to a server crash when querying the INFORMATION_SCHEMA.INNODB_BUFFER_PAGE table. Bug fixed #1072573.
  • When an upgrade was performed between major versions (e.g. by uninstalling a 5.1 RPM and then installing a 5.5 one), mysql_install_db was still called on the existing data directory which lead to re-creation of the test database. Bug fixed #1169522.
  • Fixed the upstream bug #68354 that could cause server to crash when performing update or join on Federated and MyISAM tables with one row, due to a bug in the Federated storage engine. Bug fixed #1182572.
  • Other bug fixes: bug fixed #1191395.

New in version 5.5.32-31.0 (July 3rd, 2013)

  • New Features:
  • Percona Server has implemented support for supplementary groups for PAM Authentication Plugin.
  • Bugs Fixed:
  • Prevented a race condition that could lead to a server crash when querying the INFORMATION_SCHEMA.INNODB_BUFFER_PAGE table. Bug fixed #1072573.
  • Percona Server wouldn’t start if the XtraDB changed page tracking was enabled and variable innodb_flush_method was set to ALL_O_DIRECT. Bug fixed #1131949.
  • Fixed the upstream bug #68970 that, in Percona Server, would cause small tablespaces to expand too fast around 500KB tablespace size. Bug fixed #1169494.
  • Query to the INNODB_CHANGED_PAGES table would cause server to stop with an I/O error if a bitmap file in the middle of requested LSN range was missing. Bug fixed #1179974.

New in version 5.1.69-14.7 (June 11th, 2013)

  • Bugs Fixed:
  • In Ubuntu Precise libmysqlclient18 package was chosen from the distribution’s repository instead of Percona’s which could lead to package conflicts. Bug fixed #1174271.
  • Fixed the RPM Percona-Server-shared-compat package naming issue that could lead to unresolved package dependencies when installing Percona Server 5.1. Bug fixed #893860.
  • The log tracker thread was unaware of the situation when the oldest untracked log records are overwritten by the new log data. In some corner cases this could lead to assertion errors in the log parser or bad changed page data. Bug fixed #1108613.
  • Percona Server wouldn’t start if the XtraDB changed page tracking was enabled and variable innodb_flush_method was set to ALL_O_DIRECT. Bug fixed #1131949.
  • Fixed the RPM package dependencies for different major versions of Percona Server. Bug fixed #1167109.
  • Fixed the CVE-2012-5627 vulnerability, where an unprivileged MySQL account owner could perform brute-force password guessing attack on other accounts efficiently. This bug fix comes originally from MariaDB (see MDEV-3915). Bug fixed #1172090.
  • OpenSSL libraries were not found in 32-bit builds due to a typo. Bug fixed #1175447.
  • Query to the INNODB_CHANGED_PAGES table would cause server to stop with an I/O error if a bitmap file in the middle of requested LSN range was missing. Bug fixed #1179974.
  • Server would crash if an INNODB_CHANGED_PAGES query is issued that has an empty LSN range and thus does not need to read any bitmap files. Bug fixed #1184427.
  • Incorrect schema definition for the User Statistics tables in INFORMATION_SCHEMA (CLIENT_STATISTICS, INDEX_STATISTICS, TABLE_STATISTICS, THREAD_STATISTICS, and USER_STATISTICS) led to the maximum counter values being limited to 32-bit signed integers. Fixed so that these values can be 64-bit unsigned integers now. Bug fixed #714925.
  • mysql_set_permission was failing on Debian due to missing libdbd-mysql-perl package. Fixed by adding the package dependency. Bug fixed #1003776.
  • XtraDB changed page tracking used to hold the log system mutex for the log reads needlessly, potentially limiting performance on write-intensive workloads. Bug fixed #1171699.
  • Missing path separator between the directory and file name components in a bitmap file name could stop the server starting if the innodb_data_home_dir variable didn’t have the path separator at the end. Bug fixed #1181887.
  • A warning is now returned if a bitmap file I/O error occurs after an INNODB_CHANGED_PAGES query started returning data to indicate an incomplete result set. Bug fixed #1185040.
  • Fixed the upstream bug #69379 which caused MySQL clients to return bogus error number for host-not-found errors on Ubuntu 13.04. Bug fixed #1186690.
  • Under very rare circumstances, deleting a zero-size bitmap file at the right moment would make server stop with an I/O error if changed page tracking is enabled. Bug fixed #1184517.
  • The INNODB_CHANGED_PAGES table couldn’t be queried if the log tracker wasn’t running. Bug fixed #1185304.

New in version 5.6.11-60.3 RC (June 4th, 2013)

  • New Features:
  • Percona Server has implemented Log Archiving for XtraDB. Currently this feature implementation is considered ALPHA quality.
  • Complete list of the ported features can be seen in Percona Server 5.6.11-60.3 release notes.
  • Bugs Fixed:
  • Transaction objects are now allocated calling calloc() directly instead of using InnoDB heap allocation. This may improve write performance for high levels of concurrency. Bug fixed #1185686.
  • Under very rare circumstances, deleting a zero-size bitmap file at the right moment would make server stop with an I/O error if changed page tracking is enabled. Bug fixed #1184517.
  • Missing path separator between the directory and file name components in a bitmap file name could stop the server starting if the innodb_data_home_dir variable didn’t have the path separator at the end. Bug fixed #1181887.
  • Changed page tracking used to hold the log system mutex for the log reads needlessly, potentially limiting performance on write-intensive workloads. Bug fixed #1171699.
  • Incorrect schema definition for the User Statistics tables in INFORMATION_SCHEMA (CLIENT_STATISTICS, INDEX_STATISTICS, TABLE_STATISTICS, THREAD_STATISTICS, and USER_STATISTICS) led to the maximum counter values being limited to 32-bit signed integers. Fixed so that these values can be 64-bit unsigned integers now. Bug fixed #714925.
  • Server would crash if an INNODB_CHANGED_PAGES query is issued that has an empty LSN range and thus does not need to read any bitmap files. Bug fixed #1184427.
  • Query to the INNODB_CHANGED_PAGES table would cause server to stop with an I/O error if a bitmap file in the middle of requested LSN range was missing. Bug fixed #1179974.
  • A warning is now returned if a bitmap file I/O error occurs after an INNODB_CHANGED_PAGES query started returning data to indicate an incomplete result set. Bug fixed #1185040.
  • The INNODB_CHANGED_PAGES table couldn’t be queried if the log tracker wasn’t running. Bug fixed #1185304.
  • Fixed the upstream bug #68970 that, in Percona Server, would cause small tablespaces to expand too fast around 500KB tablespace size. Bug fixed #1169494.
  • Fixed the RPM package dependencies issues. Bug fixed #1186831.
  • Reduced the overhead from the Handle Corrupted Tables check as it was missing branch predictor annotations. Bug fixed #1176864.
  • Other bug fixes: bug fixed #1184695, bug fixed #1184512, bug fixed #1183585, bug fixed #1178606, bug fixed #1177356, bug fixed #1160895, bug fixed #1182876, bug fixed #1180481, bug fixed #1163135, bug fixed #1157078, bug fixed #1182889, bug fixed #1133926, bug fixed #1165098, bug fixed #1182793, bug fixed #1157075, bug fixed #1183625, bug fixed #1155475, bug fixed #1157037, bug fixed #1182065, bug fixed #1182837, bug fixed #1177780, bug fixed #1154954.

New in version 5.5.31-30.3 (May 25th, 2013)

  • New Features:
  • Percona Server has ported the Atomic write support for Fusion-io devices patch from MariaDB. This feature adds atomic write support for directFS filesystem on Fusion-io devices. This feature implementation is considered BETA quality.
  • Percona Server has introduced innodb_read_views_memory and innodb_descriptors_memory status variables in the Extended Show Engine InnoDB Status to improve InnoDB memory usage diagnostics.
  • Bugs Fixed:
  • Fix for bug #1131187 introduced a regression that could cause a memory leak if query cache was used together with InnoDB. Bug fixed #1170103.
  • Fixed the RPM packaging regression that was introduced with the fix for bug #710799. This regression caused mysql schema to be missing after the clean RPM installation. Bug fixed #1174426.
  • Fixed the Percona-Server-shared-55 and Percona-XtraDB-Cluster-shared RPM package dependences. Bug fixed #1050654.
  • Fixed the upstream bug #68999 which caused compiling Percona Server to fail on CentOS 5 and Debian squeeze due to older OpenSSL version. Bug fixed #1183610.
  • If a slave was running with its binary log enabled and then restarted with the binary log disabled, Crash-Resistant Replication could overwrite the relay log info log with an incorrect position. Bug fixed #1092593.
  • Fixed the CVE-2012-5615 vulnerability. This vulnerability would allow remote attacker to detect what user accounts exist on the server. This bug fix comes originally from MariaDB (see MDEV-3909). Bug fixed #1171941.
  • Fixed the CVE-2012-5627 vulnerability, where an unprivileged MySQL account owner could perform brute-force password guessing attack on other accounts efficiently. This bug fix comes originally from MariaDB (see MDEV-3915). Bug fixed #1172090.
  • mysql_set_permission was failing on Debian due to missing libdbd-mysql-perl package. Fixed by adding the package dependency. Bug fixed #1003776.
  • Rebuilding Debian source package would fail because dpatch and automake were missing from build-dep. Bug fixed #1023575 (Stephan Adig).
  • Backported the fix for the upstream bug #65077 from the MySQL 5.6 version, which removed MyISAM internal temporary table mutex contention. Bug fixed #1179978.

New in version 5.5.30-30.2 (April 18th, 2013)

  • New Features:
  • Percona Server for MySQL has implemented priority connection scheduling for the Thread Pool. (Alexey Kopytov)
  • Percona Server for MySQL will now be shipped with the libjemalloc library. Benchmark showing the impact of memory allocators on MySQL performance can be found in this blogpost. (Ignacio Nin)
  • This release of Percona Server for MySQL has fixed a number of performance bugs. (Alexey Kopytov)
  • Drop table performance feature has been removed and its controlling variable innodb_lazy_drop_table has been deprecated. Feature has been removed because the upstream DROP TABLE implementation has been improved. (Laurynas Biveinis)
  • Bugs Fixed:
  • Due to parse error in the percona-server.spec Percona Server rpm packages couldn’t be built on RHEL 5 and CentOS 5. Bug fixed #1144777 (Ignacio Nin).
  • When mysqldump was used with --innodb-optimize-keys option it produced invalid SQL for cases when there was an explicitly named foreign key constraint which implied an implicit secondary index with the same name. Fixed by detecting such cases and omitting the corresponding secondary keys from deferred key creation optimization. Bug fixed #1081016 (Alexey Kopytov).
  • Percona Server for MySQL was built with YaSSL which could cause some of the programs that use it to crash. Fixed by building packages with OpenSSL support rather than the bundled YaSSL library. Bug fixed #1104977 (Ignacio Nin).
  • Running the DDL statement while variable innodb_lazy_drop_table was enabled could cause assertion failure. Bugs fixed #1086227 and #1128848 (Laurynas Biveinis).
  • Fixed yum dependencies that were causing conflicts in CentOS 6.3 during installation. Bugs fixed #1031427 and #1051874 (Ignacio Nin).
  • The log tracker thread was unaware of the situation when the oldest untracked log records are overwritten by the new log data. In some corner cases this could lead to assertion errors in the log parser or bad changed page data. Bug fixed #1108613 (Laurynas Biveinis).
  • Ported a fix from MariaDB for the upstream bug #63144. CREATE TABLE or CREATE TABLE IF NOT EXISTS statements on an existing table could wait on a metadata lock instead of failing or returning immediately if there is a transaction that executed a query which opened that table. Bug fixed #1127008 (Sergei Glushchenko).
  • Fix for bug #1070856 introduced a regression in Percona Server for MySQL 5.5.28-29.3 which could cause a server to hang when binary log is enabled. Bug fixed #1162085 (Alexey Kopytov).
  • Fixed upstream bug #49169 by avoiding the malloc call in the read_view_create_low() in most cases. This significantly improves InnoDB scalability on read-only workloads, especially when the default glibc memory allocator is used. Bug fixed #1131187 (Alexey Kopytov).
  • Removed trx_list scan in read_view_open_now() which is another problem originally reported as upstream bug #49169. This also provides much better scalability in InnoDB high-concurrent workloads. Bugs fixed #1131189 (Alexey Kopytov).
  • In the event that a slave was disconnected from the master, under certain conditions, upon reconnect, it would report that it received a packet larger than the slave_max_allowed_packet variable. Bug fixed #1135097 (George Ormond Lorch III).
  • Fixed the upstream bug #62578 which caused MySQL client to abort the connections on terminal resize. Bug fixed #925343 (Sergei Glushchenko).
  • Percona Server for MySQL would re-create the test database when using rpm on server upgrade, even if the database was previously removed. Bug fixed #710799 (Alexey Bychko).
  • Debian packages included the old version of innotop. Fixed by removing innotop and its InnoDBParser Perl package from source and Debian installation. Bug fixed #1032139 (Alexey Bychko).
  • UDF/configure.ac was incompatible with automake 1.12. Bug fixed #1099387 (Alexey Bychko).
  • Reduced the overhead from innodb_pass_corrupt_table value checks by optimizing them for better CPU branch prediction. Bug fixed #1125248 (Alexey Kopytov).
  • dialog.so used by the PAM Authentication Plugin couldn’t be loaded with Perl and Python clients when plugin-dir option was set in the [client] section of the my.cnf. Bug fixed #1155859 (Sergei Glushchenko).
  • Fixed the upstream bug #68845 which could unnecessarily increase contention on log_sys->mutex in write-intensive workloads. Bug fixed #1163439 (Alexey Kopytov).
  • Ported back from the upstream MySQL 5.6 the fix for unnecessary log_flush_order_mutex acquisition. Bug fixed #1163262 (Alexey Kopytov).
  • When mysqldump was used with --innodb-optimize-keys and --no-data options, all secondary key definitions would be lost. Bug fixed #989253 (Alexey Kopytov).
  • Warning about the Percona Toolkit UDFs was omitted when installing from Percona’s Debian repositories. Bug fixed #1015506 (Alexey Bychko).
  • Percona Server for MySQL was missing help texts in the MySQL client because the help tables were missing. Bug fixed #1041981 (Alexey Bychko).
  • Fixed the upstream bug #68197 that caused InnoDB to misclassify internal read operations as synchronous when they were actually asynchronous when Thread Pool feature was used. Bug fixed #1107539 (Sergei Glushchenko).
  • Suboptimal code for User Statistics feature has been optimized to make sure no additional work is done when userstat is disabled. Bug fixed #1128066 (Alexey Kopytov).

New in version 5.1.68-14.5 (March 19th, 2013)

  • This release contains no further bug fixes than what is included in the previous Percona Server release and MySQL 5.1.68.

New in version 5.6.10-60.2 (March 19th, 2013)

  • New Features:
  • Ported the Thread Pool patch from MariaDB. This feature enables the MySQL server to keep the top performance even with the increased number of client connections.
  • Expanded Fast Index Creation has been ported from Percona Server for MySQL 5.5
  • Handle Corrupted Tables feature has been ported from Percona Server for MySQL 5.5
  • Bugs Fixed:
  • Fixed the upstream #68116 that caused the MySQL server to crash with assertion error when InnoDB monitor with verbose lock info was used under heavy load. This bug is affecting only -debug builds. Bug fixed #1100178 (Laurynas Biveinis).

New in version 5.1.67-14.4 (March 13th, 2013)

  • New Features:
  • New user statements have been introduced for handling the XtraDB changed page tracking log files.
  • Bugs Fixed:
  • Time in slow query log was displayed incorrectly when slow_query_log_microseconds_timestamp variable was set to microseconds. Bug fixed #887928 (Laurynas Biveinis).
  • Upstream bug #67983 was causing a memory leak on a filtered slave. Bug fixed #1042946 (Sergei Glushchenko).
  • The master thread was doing dirty buffer pool flush list reads to make its adaptive flushing decisions. Fixed by acquiring the flush list mutex around the list scans. Bug fixed #1083058 (Laurynas Biveinis).
  • The server could crash when executing an INSERT or UPDATE statement containing BLOB values for a compressed table. This regression was introduced in Percona Server 5.1.59-13.0. Bug fixed #1100159 (Laurynas Biveinis).
  • Fixed the upstream #68116 that caused the server crash with assertion error when InnoDB monitor with verbose lock info was used under heavy load. This bug is affecting only -debug builds. Bug fixed #1100178 (Laurynas Biveinis).
  • When option innodb_flush_method=O_DIRECT was set up, log bitmap files were created and treated as InnoDB data files for flushing purposes, which wasn’t original intention. Bug fixed #1105709 (Laurynas Biveinis).
  • INFORMATION_SCHEMA plugin name innodb_changed_pages serves also as a command line option, but it is also a prefix of another command line option innodb_changed_pages_limit. MySQL option handling would then shadow the former with the latter, resulting in start up errors. Fixed by renaming the innodb_changed_pages_limit option to innodb_max_changed_pages. Bug fixed #1105726 (Laurynas Biveinis).
  • Writing bitmap larger than 4GB would cause write to fail. Also a write error for every bitmap page, except the first one, would result in a heap corruption. Bug fixed #1111226 (Laurynas Biveinis).
  • XtraDB changed page tracking wasn’t compatible with innodb_force_recovery=6. When starting the server log tracking initialization would fail. The server would abort on startup. Bug fixed #1083596 (Laurynas Biveinis).
  • InnoDB monitor was prefetching the data pages for printing lock information even if no lock information was going to be printed. Bug fixed #1100643 (Laurynas Biveinis).
  • Newly created bitmap file would silently overwrite the old one if they had the same file name. Bug fixed #1111144 (Laurynas Biveinis).
  • A server would stop with an assertion error in I/O and AIO routines if large innodb_log_block_size value is used in the combination with changed page tracking. Bug fixed #1114612 (Laurynas Biveinis).
  • Fixed the regression introduced with the fix for bug #1083058 which caused unnecessary mutex reacquisitions in adaptive flushing. Bug fixed #1117067 (Laurynas Biveinis).
  • InnoDB and the query plan information were being logged even if they weren’t enabled for the slow query log. Bug fixed #730173 (Laurynas Biveinis).
  • Fixed the regular expressions used for filtering the InnoDB stats that were causing sporadic extraneous lines in mysqldumpslow output. Bug fixed #1097692 (Laurynas Biveinis).
  • Other bug fixes in Percona Server for MySQL 5.1.67-14.4: bug fixed #1098436 (Laurynas Biveinis), bug fixed #1096904 (Laurynas Biveinis), bug fixed #1096899 (Laurynas Biveinis), bug fixed #1096895 (Laurynas Biveinis), bug fixed #1092142 (Laurynas Biveinis), bug fixed #1091712 (Laurynas Biveinis), bug fixed #1090874 (Laurynas Biveinis), bug fixed #1089961 (Laurynas Biveinis), bug fixed #1088954 (Laurynas Biveinis), bug fixed #1088867 (Laurynas Biveinis), bug fixed #1089265 (Laurynas Biveinis), bug fixed #1089031 (Laurynas Biveinis), bug fixed #1108874 (Laurynas Biveinis), bug fixed #1083669 (Laurynas Biveinis), bug fixed #1082437 (Laurynas Biveinis), bug fixed #909376 (Laurynas Biveinis).

New in version 5.5.30-30.1 (March 8th, 2013)

  • Bugs Fixed:
  • Minor optimization cleanup by removing unnecessary current_thd calls. Bug fixed #1121794 (Alexey Kopytov).
  • Fixed the regression introduced with the fix for bug #1083058 which caused unnecessary mutex re-acquisitions in adaptive flushing. Bug fixed #1117067 (Laurynas Biveinis).
  • Percona Server would do unnecessary slow log stats accounting even with the slow log disabled. Bug fixed #1123915 (Alexey Kopytov).
  • Optimization cleanup to avoid calls related to extended slow query log stats when this feature is disabled. Bug fixed #1123921 (Alexey Kopytov).
  • The static srv_pass_corrupt_table variable could share CPU cache lines with InnoDB row counters, which resulted in high false sharing effect in high-concurrent workloads. Bug fixed #1125259 (Alexey Kopytov).
  • Fixed the regression introduced with fix for bug #791030 in Percona Server 5.5.13-20.4 by implementing an optimized version of the same function. Bug fixed #1130655 (Alexey Kopytov).
  • Bug fixed #1132350 (Alexey Kopytov).
  • Bug fixed #1132351 (Alexey Kopytov).
  • Other bug fixes in Percona Server for MySQL 5.5.30-30.1: bug fixed #1089265 (Laurynas Biveinis).

New in version 5.1.67-14.3 (January 28th, 2013)

  • Based on MySQL 5.1.67, this release will include all the bug fixes in it.
  • Fixed the upstream bug #68045 and ported a fix for the security vulnerability CVE-2012-4414 from the Percona Server 5.1.66-14.2. This bug fix replaces the upstream fix for the MySQL bug #66550. More details about this can be found in Stewart’s blogpost. Bug fixed #1049871 (Vlad Lesin).
  • Other bug fixes: bug fixed #1087202 (Vladislav Vaintroub, Laurynas Biveinis) and bug fixed #1087218 (Vladislav Vaintroub, Laurynas Biveinis).

New in version 5.5.29-29.4 (January 28th, 2013)

  • Based on MySQL 5.5.29, including all the bug fixes in it, Percona Server 5.5.29-29.4 is now the current stable release in the 5.5 series.
  • Fixed the upstream bug #68045 and ported a fix for the security vulnerability CVE-2012-4414 from the Percona Server 5.5.28-29.3. This bug fix replaces the upstream fix for the MySQL bug #66550. More details about this can be found in Stewart’s blogpost. Bug fixed #1049871 (Vlad Lesin).

New in version 5.1.66-14.2 (January 17th, 2013)

  • New Features:
  • Multiple bitmap file support for XtraDB changed page tracking has been implemented.
  • HandlerSocket has been updated to version 1.1.0 (rev. 83d8f3af176e1698acd9eb3ac5174700ace40fe0).
  • Fast InnoDB Checksum feature has now been deprecated.
  • Support for Fake Changes has been improved by fetching the sibling pages.
  • Bug Fixes:
  • Fixed the upstream bug #66550 and the security vulnerability CVE-2012-4414. This was caused because user-supplied identifiers (table names, field names, etc.) are not always properly quoted, so authorized users that have privileges to modify a table (any non-temporary table) can inject arbitrary SQL into the binary log and that could cause multiple SQL injection like vulnerabilities. This bug fix comes originally from MariaDB (see MDEV-382). Bug fixed #1049871 (Vlad Lesin).
  • Fixed the upstream bug #67685 and the security vulnerability CVE-2012-5611. This vulnerability allowed remote authenticated users to execute arbitrary code via a long argument to the GRANT FILE command. This bug fix comes originally from MariaDB (see MDEV-3884). Bug fixed #1083377 (Vlad Lesin).
  • Rows_read was calculated in a way which lead to a negative value being printed in the slow query log. Fixed by making Rows_read to be a synonym for Rows_examined in the slow query log. Bug fixed #830286 (Alexey Kopytov).
  • Fixed the package dependencies for CentOS 6, that caused conflicts during the install. Bug fixed #908620 (Ignacio Nin).
  • innodb_fake_changes would allocate too many extents on UPDATE. In some cases this could cause infinite loop. Bug fixed #917942 (Mark Callaghan, Laurynas Biveinis).
  • Crash-resistant replication would break with binlog XA transaction recovery. If a crash would happened between XA PREPARE and COMMIT stages, the prepared InnoDB transaction would not have the slave position recorded and thus would fail to update it once it is replayed during binlog crash recovery. Bug fixed #1012715 (Laurynas Biveinis).
  • Although fake change transactions downgrade the requested exclusive (X) row locks to shared (S) locks, these S locks prevent X locks from being taken and block the real changes. This fix introduces a new option innodb_locking_fake_changes which, when set to FALSE, makes fake transactions not to take any row locks. Bug fixed #1064326 (Mark Callaghan, Laurynas Biveinis).
  • Fake changes were increasing the changed row and userstat counters. Bug fixed #1064333 (Laurynas Biveinis).
  • Log tracking was initialized too late during the InnoDB startup. Bug fixed #1076892 (Laurynas Biveinis).
  • Temporary files created by binary log cache were not purged after transaction commit. Fixed by truncating the temporary file, if used for a binary log transaction cache, when committing or rolling back a statement or a transaction. Bug fixed #1070856 (Alexey Kopytov).
  • There is no need to scan buffer pool for AHI entries after the B-trees for the tablespace have been dropped, as that will already clean them. Bug fixed #1076215 (Laurynas Biveinis).
  • When mysqldump was used with --innodb-optimize-keys, it did not handle composite indexes correctly when verifying if the optimization is applicable with respect to AUTO_INCREMENT columns. Bug fixed #1039536 (Alexey Kopytov).
  • In cases where indexes with AUTO_INCREMENT columns where correctly detected, mysqldump prevented all such keys from optimization, even though it is sufficient to skip just one (e.g. the first one). Bug fixed #1081003 (Alexey Kopytov).
  • Slow Query Log code did not handle the case of individual statements in stored procedures correctly, this caused Query_time to increase for every query stored procedure logged to the slow query log. Bug fixed #719386 (Alexey Kopytov).
  • Other bug fixes: bug fixed #901060 (Laurynas Biveinis), bug fixed #1071877 (Laurynas Biveinis), bug fixed #1090596 (Stewart Smith), bug fixed #1050466 (Laurynas Biveinis), bug fixed #890404 (Laurynas Biveinis), bug fixed #1061118 (Hrvoje Matijakovic).

New in version 5.5.28-29.3 (January 9th, 2013)

  • Bugs Fixed:
  • Fixed the upstream bug #66550 and the security vulnerability CVE-2012-4414. This was caused because user-supplied identifiers (table names, field names, etc.) are not always properly quoted, so authorized users that have privileges to modify a table (any non-temporary table) can inject arbitrary SQL into the binary log and that could cause multiple SQL injection like vulnerabilities. This bug fix comes originally from MariaDB (see MDEV-382). Bug fixed #1049871 (Vlad Lesin).
  • Fixed the upstream bug #67685 and the security vulnerability CVE-2012-5611. This vulnerability allowed remote authenticated users to execute arbitrary code via a long argument to the GRANT FILE command. This bug fix comes originally from MariaDB (see MDEV-3884). Bug fixed #1083377 (Vlad Lesin).
  • Rows_read was calculated in a way which lead to a negative value being printed in the slow query log. Fixed by making Rows_read to be a synonym for Rows_examined in the slow query log. Bug fixed #830286 (Alexey Kopytov).
  • Fixed the upstream bug #66237. Temporary files created by binary log cache were not purged after transaction commit. Fixed by truncating the temporary file, if used for a binary log transaction cache, when committing or rolling back a statement or a transaction. Bug fixed #1070856 (Alexey Kopytov).
  • Values for Rows_sent and Rows_read would be identical in the Slow Query Log. This bug was introduced when slow_extended.patch was ported to Percona Server 5.5. Fixed by making Rows_read identical to Rows_examined instead. Bug fixed #721176 (Alexey Kopytov).
  • Fixed unsigned math error in fsp_reserve_free_extents that in some specific cases would cause the function to believe that billions more extents have been reserved than have actually been reserved. Bug fixed #1083700 (George Ormond Lorch III).
  • When mysqldump was used with --innodb-optimize-keys, it did not handle composite indexes correctly when verifying if the optimization is applicable with respect to AUTO_INCREMENT columns. Bug fixed #1039536 (Alexey Kopytov).
  • Upstream bug #67606 would cause Percona Server to crash with segmentation fault when disk quota was reached. Bug fixed #1079596 (George Ormond Lorch III).
  • In cases where indexes with AUTO_INCREMENT columns where correctly detected, mysqldump prevented all such keys from optimization, even though it is sufficient to skip just one (e.g. the first one). Bug fixed #1081003 (Alexey Kopytov).
  • Other bug fixes: bug fixed #1071986 (Alexey Kopytov), bug fixed #901060 (Laurynas Biveinis), bug fixed #1090596 (Stewart Smith), bug fixed #1087202 (Vladislav Vaintroub, Laurynas Biveinis) and bug fixed #1087218 (Vladislav Vaintroub, Laurynas Biveinis).
  • Release notes for Percona Server 5.5.28-29.3 are available in our online documentation. Bugs can be reported on the launchpad bug tracker.

New in version 5.5.28-29.2 (December 18th, 2012)

  • New Features:
  • Multiple bitmap file support for XtraDB changed page tracking has been implemented.
  • Percona Server now has an option to build the binary tarball with enabled debugging. New flag --debug has been added to the build script, that will create a build with the debug-enabled binaries. New binaries will have -debug appended in case it is a debug build, ie. mysqld-debug.
  • HandlerSocket has been updated to version 1.1.0
  • innochecksum has been extended with an option to read file format information from a given InnoDB data file. As only the first page needs to be read to detect the format/version information, it can also be used on a running server. This information can be useful when doing the Expand Table Import.
  • Support for Fake Changes has been improved by fetching the sibling pages.
  • Fast InnoDB Checksum feature has now been deprecated.
  • Bugs Fixed:
  • innodb_fake_changes didn’t handle duplicate keys on REPLACE. In some cases this could cause infinite loop. Bug fixed #898306 (Mark Callaghan, Laurynas Biveinis).
  • Fixed the package dependencies for CentOS 6, that caused conflicts during the install. Bug fixed #908620 (Ignacio Nin).
  • innodb_fake_changes would allocate too many extents on UPDATE. In some cases this could cause infinite loop. Bug fixed #917942 (Mark Callaghan, Laurynas Biveinis).
  • Fixed the upstream bug #67737. mysqldump test would fail due to mixing STDOUT and STDERR. Bug fixed #959198 (Stewart Smith).
  • Although fake change transactions downgrade the requested exclusive (X) row locks to shared (S) locks, these S locks prevent X locks from being taken and block the real changes. This fix introduces a new option innodb_locking_fake_changes which, when set to FALSE, makes fake transactions not to take any row locks. Bug fixed #1064326 (Mark Callaghan, Laurynas Biveinis).
  • Fake changes were increasing the changed row and userstat counters. Bug fixed #1064333 (Laurynas Biveinis).
  • Log tracking was initialized too late during the InnoDB startup. Bug fixed #1076892 (Laurynas Biveinis).
  • Debuginfo Debian packages have been added for Percona Server. Bugs fixed #711062 and #1043873 (Ignacio Nin).
  • There is no need to scan buffer pool for AHI entries after the B-trees for the tablespace have been dropped, as that will already clean them. Bug fixed #1076215 (Laurynas Biveinis).

New in version 5.5.28-29.1 (October 29th, 2012)

  • New Features:
  • Percona Server has ported Twitter’s MySQL NUMA patch. This patch implements improved NUMA support as it prevents imbalanced memory allocation across NUMA nodes.
  • Bugs Fixed:
  • Percona Server would disconnect clients if gdb was attached and detached. This was caused by wrong signal handling. Bugs fixed #805805 and #1060136 (Laurynas Biveinis).
  • Fixed the upstream MySQL #62856, where slave server would crash after update statement. Bug fixed #1053342 (George Ormond Lorch III).
  • Reads from tablespaces being deleted would result in buffer pool locking error. Bug fixed #1042640 (Stewart Smith).
  • Resolved the Ubuntu Percona Server package conflicts with upstream packages. Bug fixed #907499 (Ignacio Nin).
  • Crash-resistant replication would break with binlog XA transaction recovery. If a crash would happened between XA PREPARE and COMMIT stages, the prepared InnoDB transaction would not have the slave position recorded and thus would fail to update it once it is replayed during binlog crash recovery. Bug fixed #1012715 (Laurynas Biveinis).

New in version 5.1.66-14.1 (October 29th, 2012)

  • Bugs Fixed:
  • Percona Server would disconnect clients if gdb was attached and detached. This was caused by wrong signal handling. Bugs fixed #805805 and #1060136 (Laurynas Biveinis).
  • Fixed the upstream MySQL bug #61509. Crash in YaSSL was causing SSL tests failures on Ubuntu Oneiric hosts. Bug fixed #902471 (Laurynas Biveinis).
  • Fixed the upstream MySQL bug #62856 where check for “stack overrun” wouldn’t work with gcc-4.6 and caused the server crash. Bug fixed #902472 (Laurynas Biveinis).
  • Resolved the Ubuntu Percona Server package conflicts with upstream packages. Bug fixed #907499 (Ignacio Nin).
  • Percona Server would crash on a DDL statement if an XtraDB internal SYS_STATS table was corrupted or overwritten. This is now fixed by detecting the corruption and creating a new SYS_STATS table. Bug fixed #978036 (Laurynas Biveinis).
  • Postfix would crash on CentOS/RHEL 6.x when using shared dependency (libmysqlclient.so). Fixed by building packages with OpenSSL support rather than the bundled YaSSL library. Bug fixed #1028240 (Ignacio Nin).
  • Fix for bug #905334 regressed by adding debug-specific code with missing local variable that would break the debug build. Bug fixed #1046389 (Laurynas Biveinis).
  • Fix for bug #686534 caused a regression by mishandling LRU list mutex. Bug fixed #1053087 (George Ormond Lorch III).
  • Fixed the upstream MySQL bug #67177, Percona Server 5.1 was incompatible with Automake 1.12. Bug fixed #1064953 (Alexey Kopytov).
  • Flashcache support resulted in confusing messages in the error log on Percona Server startup, even when flashcache was not used. This was fixed by adding new boolean option flashcache. When set to 0 (default), flashcache checks are disabled and when set to 1 checks are enabled. Error message has been made more verbose including error number and system error message as well. Bug fixed #747032 (Sergei Glushchenko).
  • Custom server builds would crash when compiled with a non-default maximum number of indexes per table. Upstream MySQL bugs fixed: #54127, #61178, #61179 and #61180. Bug fixed #1042517 (Sergei Glushchenko).
  • Cleaned up the test duplicates in regular atomic operation tests. Bug fixed #1039931 (Laurynas Biveinis).

New in version 5.5.27-29.0 (October 16th, 2012)

  • New Features:
  • Percona Server now supports XtraDB changed page tracking. This feature will be used for implementing faster incremental backups that use this information to avoid full data scans.
  • Number of binlog files can be restricted when using Percona Server with the new max_binlog_files option.
  • Bugs Fixed:
  • Fixed server assertion error related to buffer pool, only visible in debug builds. Bug fixed #905334 (Stewart Smith).
  • Fix for bug #978036 introduced the innodb_sys_stats_root_page debugging option (only present in debug builds), rendering the previously-existing innodb_sys_stats option its prefix. As such, it became unsettable from command line. Fixed by renaming innodb_sys_stats_root_page to innodb_persistent_stats_root_page. Bug fixed #1013644 (Laurynas Biveinis).
  • Multiple adaptive hash index partitions would cause overly large hash index. Fixed by changing the way partition sizes are calculated initially. Bug fixed #1018264 (George Ormond Lorch III).
  • Postfix would crash on CentOS/RHEL 6.x when using shared dependency (libmysqlclient.so). Fixed by building packages with OpenSSL support rather than the bundled YaSSL library. Bug fixed #1028240 (Ignacio Nin).
  • Fixed the issue where LRU dump would hold LRU_list_mutex during the entire dump process. Now the mutex is periodically released in order not to block server while the dump is in progress. Bug fixed #686534 (George Ormond Lorch III).
  • Option expire_logs_days was broken by group_commit patch introduced in Percona Server 5.5.18-23.0. Bug fixed #1006214 (Stewart Smith).
  • Fixed issue where innodb_blocking_lru_restore did not take an optional bool argument similar to other bool options. Bug fixed #881001 (George Ormond Lorch III).
  • The binlog shouldn’t be rotated while it contains XA transactions in the PREPARED state. Bug fixed #1036040 (Stewart Smith).
  • Flashcache support resulted in confusing messages in the error log on Percona Server startup even when flashcache was not used. This was fixed by adding new boolean option –flashcache. When set to 0 (default), flashcache checks are disabled and when set to 1 checks are enabled. Error message has been made more verbose, it now includes the error number and system error message as well. Bug fixed #747032 (Sergei Glushchenko).
  • Custom server builds would crash when compiled with a non-default maximum number of indexes per table. Upstream MySQL bugs: #54127, #61178, #61179 and #61180. Bug fixed #1042517 (Sergei Glushchenko).

New in version 5.6 Alpha (September 27th, 2012)

  • Based on MySQL 5.6.6, including all the bug fixes in it, Percona Server 5.6.6-60.1 is the second ALPHA release in the Percona Server 5.6 series. All of Percona‘s software is open-source and free, all the details of the release can be found in the 5.6.6-60.1 milestone at Launchpad.
  • This release does NOT include all the features and fixes in Percona Server 5.5. A list of features included is provided below.
  • Changes Since 5.6.5-60.0:
  • Based on MySQL 5.6.6 and contains all the improvements and bug fixes that come with it.
  • fast_index_creation variable has been removed, it is replaced by the MySQL 5.6’s ALGORITHM= option to ALTER TABLE
  • HandlerSocket has been removed from the tree. It was not built with the 5.6.5-60.0 binaries and may return when HandlerSocket supports MySQL 5.6.

New in version 5.5.27-28.1 (September 6th, 2012)

  • This release contains critical bug fixes from the previous Percona Server 5.5 release (5.5.27-28.0)

New in version 5.1.63-13.4 (May 25th, 2012)

  • Building Percona Server with the Clang compiler resulted in a compiler error. Bug fixed #997496 (Alexey Kopytov).

New in version 5.1.53-12.4 (December 30th, 2010)

  • New features:
  • Percona Server 5.1.49-rel12.0 is based on MySQL 5.1.49.
  • New features added:
  • error_pad - Implements error code compatibilities with MySQL 5.5. (Oleg Tsarev)
  • query_cache_totally_disable - Allows the user to disable use of the query cache. (Oleg Tsarev, backport from MySQL 5.5)
  • show_engines - Changes SHOW STORAGE ENGINES to report XtraDB when appropriate. (Oleg Tsarev)
  • remove_fcntl_excessive_calls - Removes excessive fcntl calls. (Oleg Tsarev, port from FaceBook tree)
  • sql_no_fcache - Prevents blocks of data from being cached to FlashCache during a query. (Oleg Tsarev, port from FaceBook tree)
  • status_wait_query_cache_mutex - Provides a new thread state - “Waiting on query cache mutex”. (Oleg Tsarev)
  • log_connection_error - Issues the warning “Too many connection” if log_warnings is enabled. (Oleg Tsarev)
  • response_time_distribution - Counts queries with very short execution times and groups them by time interval. (Oleg Tsarev)
  • innodb_buffer_pool_shm_key - Allows storing the buffer pool in a shared memory segment between restarts of the server. (Yasufumi Kinoshita)
  • Option syslog was added to the mysql client. If enabled, all commands run on the client are logged to syslog. (Oleg Tsarev)
  • New variables introduced:
  • innodb_flush_log_at_trx_commit_session - Implements a session-level version of the MySQL global system variable innodb_flush_log_at_trx_commit. (Yasufumi Kinoshita)
  • innodb_fast_index_creation - Allows disabling of fast index creation. (Yasufumi Kinoshita)
  • innodb_use_sys_stats_table - If ON, the table's statistics are stored statically in the internal table SYS_STATS. The table is populated with the ANALYZE TABLE command. (Yasufumi Kinoshita)
  • Fixed bugs:
  • Bug #576041 - Fixes long stalls while accessing the innodb_buffer_pool_pages_index table on systems with a large number of tables.
  • Bug #592007 - More strictly enforces the maximum purge delay defined by innodb_max_purge_lag by removing the requirement that purge operations be delayed if an old consistent read view exists that could see the rows to be purged.
  • Bug #607449 - Fixes a crash during shutdown when userstat_running=1.
  • Bug #612954 - Fixes a problem with SHOW PROCESSLIST displaying an incorrect time.
  • Bug #610525 - Reduces the number of compile time errors when the server is rebuilt.
  • Bug #569275 - Fixes a crash when XtraDB shuts down in “crash resistent mode”.
  • Bug #589484 - Adds reporting of the query cache mutex status in SHOW PROCESSLIST.
  • Bug #606965 - Allows preventing data caching to flash storage during a query.
  • Bug #606810 - Ports a fix from to remove excessive fcntl calls.
  • Bug #609027 - Allows query cache use to be completely disabled
  • Bug #600352 - Fixes SHOW STORAGE ENGINES to correctly report “Percona-XtraDB” rather than “InnoDB”

New in version 5.1.49-12.0 (September 16th, 2010)

  • New features:
  • Percona Server 5.1.49-rel12.0 is based on MySQL 5.1.49.
  • New features added:
  • error_pad - Implements error code compatibilities with MySQL 5.5. (Oleg Tsarev)
  • query_cache_totally_disable - Allows the user to disable use of the query cache. (Oleg Tsarev, backport from MySQL 5.5)
  • show_engines - Changes SHOW STORAGE ENGINES to report XtraDB when appropriate. (Oleg Tsarev)
  • remove_fcntl_excessive_calls - Removes excessive fcntl calls. (Oleg Tsarev, port from FaceBook tree)
  • sql_no_fcache - Prevents blocks of data from being cached to FlashCache during a query. (Oleg Tsarev, port from FaceBook tree)
  • status_wait_query_cache_mutex - Provides a new thread state - “Waiting on query cache mutex”. (Oleg Tsarev)
  • log_connection_error - Issues the warning “Too many connection” if log_warnings is enabled. (Oleg Tsarev)
  • innodb_buffer_pool_shm_key - Allows storing the buffer pool in a shared memory segment between restarts of the server. (Yasufumi Kinoshita)
  • Option syslog was added to the mysql server. If enabled, all commands run on the server are logged to syslog. (Oleg Tsarev)
  • New variables introduced:
  • innodb_flush_log_at_trx_commit_session - Implements a session-level version of the MySQL global system variable innodb_flush_log_at_trx_commit. (Yasufumi Kinoshita)
  • innodb_fast_index_creation - Allows disabling of fast index creation. (Yasufumi Kinoshita)
  • innodb_use_sys_stats_table - If ON, the table's statistics are stored statically in the internal table SYS_STATS. The table is populated with the ANALYZE TABLE command. (Yasufumi Kinoshita)
  • Fixed bugs:
  • Bug #576041 - Fixes long stalls while accessing the innodb_buffer_pool_pages_index table on systems with a large number of tables.
  • Bug #592007 - More strictly enforces the maximum purge delay defined by innodb_max_purge_lag by removing the requirement that purge operations be delayed if an old consistent read view exists that could see the rows to be purged.
  • Bug #607449 - Fixes a crash during shutdown when userstat_running=1.
  • Bug #612954 - Fixes a problem with SHOW PROCESSLIST displaying an incorrect time.
  • Bug #610525 - Reduces the number of compile time errors when the server is rebuilt.
  • Bug #569275 - Fixes a crash when XtraDB shuts down in “crash resistent mode”.
  • Bug #589484 - Adds reporting of the query cache mutex status in SHOW PROCESSLIST.
  • Bug #606965 - Allows preventing data caching to flash storage during a query.
  • Bug #606810 - Ports a fix from to remove excessive fcntl calls.
  • Bug #609027 - Allows query cache use to be completely disabled
  • Bug #600352 - Fixes SHOW STORAGE ENGINES to correctly report “Percona-XtraDB” rather than “InnoDB”

New in version 5.1.49-11.3 (September 15th, 2010)

  • New features:
  • Percona Server 5.1.49-11.3 is based on MySQL 5.1.49.
  • A new variable was introduced: innodb_use_sys_stats_table. If ON, the table's statistics are stored statically in the internal table SYS_STATS. The table is populated with the ANALYZE TABLE command. (Yasufumi Kinoshita)
  • A new session variable was introduced: innodb_flush_log_at_trx_commit_session. (Yasufumi Kinoshita)
  • Fixed bugs:
  • Bug #576041 - Fixes long stalls while accessing the innodb_buffer_pool_pages_index table on systems with a large number of tables
  • Bug #592007 - More strictly enforces the maximum purge delay defined by innodb_max_purge_lag by removing the requirement that purge operations be delayed if an old consistent read view exists that could see the rows to be purged.
  • Bug #607449 - Fixes a crash during shutdown when userstat_running=1
  • Bug #612954 - Fixes a problem with SHOW PROCESSLIST displaying an incorrect time
  • Bug #610525 - Reduces the number of compile time errors when the server is rebuilt
  • Bug #569275 - Fixes a crash when XtraDB shuts down in “crash resistent mode”

New in version 5.1.47-11.2 (July 14th, 2010)

  • Escape processing
  • /*!…*/ processing
  • Insert space instead of empty
  • Crash on comment ended of query