Percona XtraDB Cluster 5.6.14-25.1

Percona is glad to announce the first Beta release of Percona XtraDB Cluster 5.6 on November 21st, 2013. Binaries are available from downloads area or from our software repositories.

Based on Percona Server 5.6.14-62.0 including all the bug fixes in it, Galera Replicator 3.1 and on Codership wsrep API 5.6.14-25.1 is now the first BETA release. All of Percona‘s software is open-source and free, all the details of the release can be found in the 5.6.14-25.1 milestone at Launchpad.

This release contains all of the features and bug fixes in Percona XtraDB Cluster 5.5.34-23.7.6, plus the following:

New Features

Percona XtraDB Cluster is now using Galera Replicator 3.1 and wsrep API 5.6.14-25.1.

Percona XtraDB Cluster has implemented a number of XtraDB performance improvements for I/O-bound high-concurrency workloads.

Percona XtraDB Cluster has implemented a number of performance improvements for Page cleaner thread tuning.

ALL_O_DIRECT method for innodb_flush_method has been ported from 5.5 version.

Statement Timeout feature has been ported from the Twitter branch.

Percona XtraDB Cluster has extended the SELECT INTO ... OUTFILE and SELECT INTO DUMPFILE to add the support for UNIX sockets and named pipes.

Percona XtraDB Cluster has implemented more efficient log block checksums with new innodb_log_checksum_algorithm variable.

Percona XtraDB Cluster now supports Per-query variable statements.

Limited support for Query Cache has been implemented. Query cache cannot still be fully enabled during the startup. To enable query cache, mysqld should be started with query_cache_type=1 and query_cache_size=0 and then query_cache_size should be changed to desired value during runtime.

RPM packages are now made relocatable which means they now support installation to custom prefixes.

Features from Galera

Following are salient features of Galera 3:

  • new writeset format optimized for performance and reduced memory usage.
  • 128-bit writeset checksums, checked every time before writeset is applied, so that corruption cannot sneak in neither on disk, nor in transfer.
  • hardware accelerated CRC32-C algorithm for network packets (and ability to turn it off completely). Parameter: socket.checksum.
  • improved handling of preordered (read: master-slave replication) events, that preserves original event ID and offers better throughput.
  • ability to divide cluster into segments with minimized communication between them to minimize network traffic over WAN. Parameter: gmcast.segment.

Bugs fixed

Some wsrep variables (wsrep_provider, wsrep_provider_options, wsrep_cluster_address...) could be “doubly” allocated which caused memory leaks. Bug fixed #1072839.

If SELECT FOR UPDATE... query was aborted due to multi-master conflict, the client wouldn’t get back the deadlock error. From client perspective the transaction would be successful. Bug fixed #1187739.

Temporary tables are not replicated, but any DDL on those tables were, which would generates error messages on other nodes. Bugs fixed #1194156, #1084702, #1212247.

When setting the gcache.size to a larger value than the default 128M, the mysql service command did not allow enough time for the file to be preallocated. Bug fixed #1207500.

When installing first Percona-XtraDB-Cluster-client and then Percona-XtraDB-Cluster-server on two single statements or a single statement with both packages , yum would install percona-xtrabackup-20 instead percona-xtrabackup package as dependency of Percona-XtraDB-Cluster-server. Bug fixed #1226185.

Different mutex implementation in the 5.6 could lead to server assertion error. Bug fixed #1233383.

Enabling wsrep_log_conflicts variable could cause issues with lock_mutex. Bug fixed #1234382.

Server could freeze with mixed DML/DDL load because TOI brute force aborts were not properly propagated. Bug fixed #1239571.

CREATE TABLE AS SELECT would fail with explicit temporary tables, when binlogging was enabled and autocommit was set to 0. Bug fixed #1240098.

Transaction cleanup function did not get called for autocommit statements after rollback, it would stay in LOCAL_COMMIT even after rollback finished which caused problems when the next transaction started. Bug fixed #1240567.

DDL statements like CREATE TEMPORARY TABLE LIKE would be replicated and applied in all cluster nodes. This caused temporary table definitions to pile up in slave threads. Bug fixed #1246257.

CREATE TABLE AS SELECT was not replicated, if the select result set was empty. Bug fixed #1246921.

Write set flags defined in wsrep API are now exposed to application side appliers too. Bug fixed #1247402.

Local brute force aborts are counted accurately. Bug fixed #1247971.

Certain combinations of transaction rollbacks could leave stale transactional MDL locks. Bug fixed #1247978.

After turning UNIV_SYNC_DEBUG on, node that was started from clean state would crash immediately at startup. Bug fixed #1248908.

Server built with UNIV_SYNC_DEBUG would assert if SQL load has DELETE statements on tables with foreign key constraints with ON DELETE CASCADE option. Bug fixed #1248921.

Xtrabackup SST dependencies have been added as Optional/Recommended/Suggested dependencies. Bug fixed #1250326.

Other bugs fixed: bug fixed #1020457, bug fixed #1250865, bug fixed #1249753, bug fixed #1248396, bug fixed #1247980, bug fixed #1238278, bug fixed #1234421, bug fixed #1228341, bug fixed #1228333, bug fixed #1225236, bug fixed #1221354, bug fixed #1217138, bug fixed #1206648, bug fixed #1200647, bug fixed #1180792, bug fixed #1163283, bug fixed #1234229, bugs fixed #1250805, bug fixed #1233301, and bug fixed #1210509.

We did our best to eliminate bugs and problems during the testing release, but this is a software, so bugs are expected. If you encounter them, please report them to our bug tracking system.

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.