Percona Server for MySQL 5.6.26-74.0

Percona is glad to announce the release of Percona Server for MySQL 5.6.26-74.0 on September 15th, 2015 (Downloads are available here and from the Percona Software Repositories).

Based on MySQL 5.6.26, including all the bug fixes in it, Percona Server for MySQL 5.6.26-74.0 is the current GA release in the Percona Server for MySQL 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.26-74.0 milestone at Launchpad.

New Features

TokuDB storage engine source has been merged into the Percona Server for MySQL code. TokuDB storage engine tokudb_version variable now has the same value as the Percona Server for MySQL version variable version.

TokuDB Hot Backup has been renamed to Percona TokuBackup and it is now open source. Source code has been integrated into Percona Server for MySQL code as a git submodule. TokuDB Hot Backup plugin source has been merged into Percona Server for MySQL code.

Tokutek Fractal Tree has been renamed to Percona FT and its source code has been integrated into Percona Server for MySQL code as a git submodule.

TokuDB tests for Percona Server for MySQL 5.6 have been merged into Percona Server for MySQL 5.6 code.

Google SNAPPY compression/decompression algorithm is now available as TokuDB Compression table format.

Percona Server for MySQL now supports changing the server_id variable per session, by implementing the new pseudo_server_id variable. This feature is also fixing upstream bug #35125.

Percona Server for MySQL has temporarily disabled savepoints in triggers and stored functions. The reason is that even having fixed bug #1438990 and bug #1464468 we have found more cases where savepoints in triggers break binary logging and replication, resulting in server crashes and broken slaves. This feature will be disabled until the above issues are properly resolved.

LOCK TABLES FOR BACKUP now flushes the current binary log coordinates to InnoDB. Thus, under active LOCK TABLES FOR BACKUP, the binary log coordinates in InnoDB are consistent with its redo log and any non-transactional updates (as the latter are blocked by LOCK BINLOG FOR BACKUP). It is planned that this change will enable Percona XtraBackup to avoid issuing the more invasive LOCK BINLOG FOR BACKUP command under some circumstances.

innodb_stress has been added to the list of default MTR suites. For most supported systems satisfying the newly added dependencies is straightforward, but on CentOS 5, the default Python is too old. Thus python26 and python26-mysqldb packages should be installed there and python26 should be made the default python for the testsuite environment.

Three new TokuDB variables, tokudb_client_pool_threads, tokudb_cachetable_pool_threads, and tokudb_checkpoint_pool_threads, have been implemented to improve the controlling of thread pool size.

Percona Server for MySQL has implemented new tokudb_enable_partial_eviction option in TokuDB to allow disabling of partial eviction of nodes.

Percona Server for MySQL has implemented new tokudb_compress_buffers_before_eviction option in TokuDB which allows the evictor to compress unused internal node partitions in order to reduce memory requirements as a first step of partial eviction before fully evicting the partition and eventually the entire node.

Bugs Fixed

Querying GLOBAL_TEMPORARY_TABLES table would crash threads working with internal temporary tables used by ALTER TABLE. Bug fixed #1113388.

Selecting from GLOBAL_TEMPORARY_TABLES table while running an online ALTER TABLE on a partitioned table in parallel could lead to a server crash. Bug fixed #1193264.

Kill Idle Transactions feature could cause an assertion on a debug build due to a race condition. Bug fixed #1206008.

libmylsqclient_16 symbols were missing in Percona Server for MySQL shared library package on RHEL/CentOS 7. Bug fixed #1420691.

Prepared statements in stored procedures could crash Response Time Distribution plugin. Bug fixed #1426345.

When variable innodb_corrupt_table_action is set to Warn/Salvage then server could crash on updating table statistics during query execution on affected tables. Bug fixed #1426610.

A sequence of failing TRUNCATE TABLE, then insert to that table, and CHECK TABLE would crash the server. Bug fixed #1433197.

When InnoDB change buffering was enabled and used, executing a FLUSH TABLE ... FOR EXPORT would cause a server hang and SHOW PROCESSLIST would show that table in a System Lock state. Bug fixed #1454441 (upstream #77011).

FLUSH INDEX_STATISTICS / FLUSH CHANGED_PAGE_BITMAPS and FLUSH USER_STATISTICS / RESET CHANGE_PAGE_BITMAPS pairs of commands were inadvertently joined, i.e. issuing either command had the effect of both. The first pair, besides flushing both index statistics and changed page bitmaps, had the effect of FLUSH INDEX_STATISTICS requiring SUPER instead of RELOAD privilege. The second pair resulted in FLUSH USER_STATISTICS destroying changed page bitmaps. Bug fixed #1472251.

Enabling super_read_only together with read_only in my.cnf would result in server crashing on startup. The workaround is to enable super_read_only dynamically on a running server.Bug fixed #1389935 ( the fix was ported from Facebook patch #14d5d9).

Enabling super_read_only as a command line option would not enable read_only. Bug fixed #1389935 ( the fix was ported from Facebook patch #14d5d9).

If a new connection thread was created while a SHOW PROCESSLIST command or a INFORMATION_SCHEMA.PROCESSLIST query was in progress, it could have a negative TIME_MS value returned in the PROCESSLIST output. Bug fixed #1379582.

With Support for Fake Changes enabled, a write to an InnoDB table that would cause B-tree reorganization could lead to server assertion with unknown error code 1000. Bug fixed #1410410.

Running ALTER TABLE ... DISCARD TABLESPACE with Support for Fake Changes enabled would lead to a server assertion. Bug fixed #1372219.

ALTER TABLE did not allow to change a column to NOT NULL if the column was referenced in a foreign key. Bug fixed #1470677 (upstream #77591).

DROP TABLE IF EXISTS which fails due to a foreign key presence could break replication if slave had replication filters. Bug fixed #1475107 (upstream #77684).

Enabling Log Archiving for XtraDB when --innodb-read-only option was enabled would cause server to crash. Bug fixed #1484432.

LRU manager thread flushing was being accounted to buffer_flush_background InnoDB metrics which was wrong and redundant. Bug fixed #1491420.

Fixed a typo in the cleaner thread loop where n_flushed is added to, instead of reset, by the idle server flushing. This may cause a cleaner thread sleep skip on a non-idle server. Bug fixed #1491435.

Running TokuDB for a long time with lots of file open and close operations could lead to a server crash due to server incorrectly setting a reserved value. Bug fixed #690.

Fixed TokuDB memory leak due to data race in context status initialization. Bug fixed #697.

Removed unnecessary calls to malloc_usable_size() function in PerconaFT library to improve the performance. Bug fixed #682.

Other bugs fixed: #1370002, #1464468, #1287299, #1472256, #867, #870, #878, #658, #661, #663, #665, #687, #696, #698, #870, #685, and #878.

Contact Us

For free technical help, visit the Percona Community Forum.
To report bugs or submit feature requests, open a JIRA ticket.
For paid support and managed or professional services, contact Percona Sales.