Percona XtraDB Cluster moved to 5.6.27-25.13

Milestone information

Percona XtraDB Cluster moved to
Hrvoje Matijakovic
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
9 Krunal Bauskar
No blueprints are targeted to this milestone.
11 Fix Released

Download files for this release

File Description Downloads

Release notes 


View the full changelog

New Features
There is a new script for building Percona XtraDB Cluster from source. For more information, see Compiling and Installing from Source Code.
wsrep_on is now a session only variable. That means toggling it will not affect other clients connected to said node. Only the session/client modifying it will be affected. Trying to toggle wsrep_on in the middle of a transaction will now result in an error. Trx will capture the state of wsrep_on during start and will continue to use it. Start here means when the first logical changing statement is executed within transaction context.
Bugs Fixed
#1261688 and #1292842: Fixed race condition when two skipped replication transactions were rolled back, which caused [ERROR] WSREP: FSM: no such a transition ROLLED_BACK -> ROLLED_BACK with LOAD DATA INFILE
#1362830: Corrected xtrabackup-v2 script to consider only the last specified log_bin directive in my.cnf. Multiple log_bin directives caused SST to fail.
#1370532: Toggling wsrep_desync while node is paused is now blocked.
#1404168: Removed support for innodb_fake_changes variable.
#1455098: Fixed failure of LDI on partitioned table. This was caused by partitioned table handler disabling bin-logging and Native Handler (InnoDB) failing to generate needed bin-logs eventually causing skipping of statement replication.
#1503349: garbd now uses default port number if it is not specified in sysconfig.
#1505184: Corrected wsrep_sst_auth script to ensure that user name and password for SST is passed to XtraBackup through internal command-line invocation. ps -ef doesn’t list these credentials so passing it internally is fine, too.
#1520491: FLUSH TABLE statements are not replicated any more, because it lead to an existing upstream fix pending deadlock error. This fix also takes care of original fix to avoid increment of local GTID.
#1528020: Fixed async slave thread failure caused by redundant updates of mysql.event table with the same value. Redundant updates are now avoided and will not be bin-logged.
Fixed garb init script causing new UUIDs to be generated every time it runs. This error was due to missing base_dir configuration when gardb didn’t have write-access to current working directory. garbd will now try to use cwd. Then it will try to use /var/lib/galera (like most Linux daemons). If it fails to use or create /var/lib/galera, it will throw a fatal error.
Fixed replication of DROP TABLE statement with a mix of temporary and non-temporary tables (for example, DROP TABLE temp_t1, non_temp_t2), which caused errorneous DROP TEMPORARY TABLE stmt on replicated node. Corrected it by detecting such scenarios and creating temporary table on the replicated node, which is then dropped by follow-up DROP statement. All this workload should be part of same unit as temporary tables are session-specific.
Fixed error when wsrep_cluster_name value over 32 characters long caused gmcast message to exceed maximum length. Imposed a limit of 32 character on wsrep_cluster_name.
Added code to properly handle default values for wsrep_* variables, which caused an error/crash.
Fixed error when a CREATE TABLE AS SELECT (CTAS) statement still tried to certify a transaction on a table without primary key even if certification of tables without primary key was disabled. This error was caused by CTAS setting trx_id (fake_trx_id) to execute SELECT and failing to reset it back to -1 during INSERT as certification is disabled.
Fixed crashing of INSERT .... SELECT for MyISAM table with wsrep_replicate_myisam set to ON. This was caused by TOI being invoked twice when source and destination tables were MyISAM.
Fixed crash when caching write-set data beyond configured limit. This was caused by TOI flow failing to consider/check error resulting from limit enforcement.
Fixed error when loading MyISAM table from schema temporary table (with wsrep_replicate_myisam set to ON). This was caused by temporary table lookup being done using get_table_name(), which could be misleading as table_name for temporary tables is set to temporary generated name. Original name of the table is part of table_alias. The fix corrected condition to consider both table_name and alias_name.
Fixed error when changing wsrep_provider in the middle of a transaction or as part of a procedure/trigger. This is now blocked to avoid inconsistency.
Fixed TOI state inconsistency caused by DELAYED_INSERT on MyISAM table (TOI_END was not called). Now the DELAYED_ qualifier will be ignored and statement will be interpreted as normal INSERT.
Corrected locking semantics for FLUSH TABLES WITH READ LOCK (FTWRL). It now avoids freeing inheritted lock if follow-up FLUSH TABLE statement fails. Only frees self-acquired lock.
Fixed crash caused by GET_LOCK + wsrep_drupal_282555_workaround. GET_LOCK path failed to free all instances of user-level locks after it inherited multiple-user-locks from Percona Server. The cleanup code now removes all possible references of locks.
Fixed cluster node getting stuck in Donor/Desync state after a hard recovery, because of an erroneous type cast in source code.
Corrected DDL and DML semantics for MyISAM:
DDL (CREATE/DROP/TRUNCATE) on MyISAM will be replicated irrespective of wsrep_replicate_miysam value
DML (INSERT/UPDATE/DELETE) on MyISAM will be replicated only if wsrep_replicate_myisam is enabled
SST will get full transfer irrespective of wsrep_replicate_myisam value (it will get MyISAM tables from donor if any)
Difference in configuration of pxc-cluster node on enforce_storage_engine front may result in picking up different engine for same table on different nodes
CREATE TABLE AS SELECT (CTAS) statements use non-TOI replication and are replicated only if there is involvement of InnoDB table that needs trx (involvement of MyISAM table will cause CTAS statement to skip replication)
SST fails with innodb_data_home_dir/innodb_log_home_dir. This was a bug in Percona XtraBackup, which is fixed in 2.3.3 and 2.2.12.

0 blueprints and 11 bugs targeted

Bug report Importance Assignee Status
1261688 #1261688 FSM no such a transition ROLLED_BACK, mysqld got signal 6 2 Critical Krunal Bauskar  10 Fix Released
1292842 #1292842 WSREP: FSM: no such a transition ROLLED_BACK -> ROLLED_BACK with LOAD DATA INFILE 2 Critical Krunal Bauskar  10 Fix Released
1455098 #1455098 Partitioning + load data local infile = deadlocks or crash 2 Critical Krunal Bauskar  10 Fix Released
1370532 #1370532 Setting wsrep_desync=1 after FTWRL blocks a node 3 High   10 Fix Released
1505184 #1505184 wsrep_sst_auth don't work in Percona-XtraDB-Cluster-56-5.6.25-25.12.1.el7 4 Medium Krunal Bauskar  10 Fix Released
1404168 #1404168 innodb_fake_changes crashes galera node 5 Low Krunal Bauskar  10 Fix Released
1362830 #1362830 xtrabackup-v2 SST fails with multiple log_bin directives in my.cnf 1 Undecided Krunal Bauskar  10 Fix Released
1500720 #1500720 mysql will not start with changed page tracking and O_DIRECT 1 Undecided   10 Fix Released
1503349 #1503349 garbd requires port number in sysconfig 1 Undecided Krunal Bauskar  10 Fix Released
1520491 #1520491 Nodes getting blocked with "flush tables" command 1 Undecided Krunal Bauskar  10 Fix Released
1528020 #1528020 PXC updates mysql.event table with same value which can break async slave with replication filters 1 Undecided Krunal Bauskar  10 Fix Released
This milestone contains Public information
Everyone can see this information.