Hi all, it is time again to do another preview release of MySQL Group Replication, the plugin that brings multi-master update everywhere support to MySQL, like we described in the Hello World post.
We are very proud to present the eighth preview release of MySQL Group Replication plugin, based on MySQL Server 5.7.15. It introduces a couple of exciting features and several bug fixes. Please enjoy the highlights!
Changes Introduced
Parallel Applier Support
Group Replication now also takes full advantage of the parallel binary log applier infrastructure. This reduces applier lag and improves replication performance considerably. Stay tuned for a follow up blog post on this matter that includes detailed benchmarks.
The Group Replication parallel applier is configured in the same way as in asynchronous replication:
1 |
--slave_parallel_workers=NUMBER --slave_parallel_type=logical_clock --slave_preserve_commit_order=ON |
Though on Group Replication slave_parallel_type
must be "logical_clock"
and slave_preserve_commit_order
must be enabled.
Single Primary Mode
It is a configuration mode for Group Replication that makes a single member act as a writeable master (PRIMARY) and the rest of the members act as hot-standbys (SECONDARY). The group itself coordinates and configures itself automatically to determine which member will act as the PRIMARY, through a leader election mechanism.
The main motivation behind this new configuration mode is to provide the “single master” behavior–from a user and application point of view–to Group Replication users, as this is closer to what many users are used to with asynchronous replication. They can now get that same data perspective, while still taking advantage of the automatic membership and failover features innate to Group Replication.
It can be controlled with:
group_replication_single_primary_mode=TRUE|FALSE
Which enables/disables the single primary mode–enabled now being the default.
And by:
group_replication_enforce_update_everywhere_checks=FALSE|TRUE
Which enables/disables strict consistency checks for multi-master update everywhere, that too now being disabled by default.
The current PRIMARY member’s UUID can be known by executing the following SQL statement:
1
2
3
4
5
6
7
|
mysql> SELECT * FROM performance_schema.global_status WHERE VARIABLE_NAME='group_replication_primary_member'; +----------------------------------+--------------------------------------+ | VARIABLE_NAME | VARIABLE_VALUE | +----------------------------------+--------------------------------------+ | group_replication_primary_member | dcd3b36b-79c5-11e6-97b8-00212844d44e | +----------------------------------+--------------------------------------+ 1 row in set (0.00 sec) |
When single primary mode is disabled, the group_replication_primary_member variable value is empty.
Bug Fixes
There are a lot of bugs that have been fixed in this eighth preview release of MySQL Group Replication, including group communication engine stabilization fixes, all of which has us moving quickly towards a more stable, reliable, and full-fledged plugin.
Conclusion
Go to http://labs.mysql.com/ and try the new preview release of MySQL Group Replication following the instructions at Quick Start Guide and send us your feedback.
As with all labs releases, we are not recommending that this software be used in production as there are likely still a number of bugs which need to be fixed. This is not a GA release, even though it is a much more stable version of the plugin. If you do encounter any issues, please file a bug under the ‘MySQL Server: Group Replication’ category so that we may investigate further.
THANK YOU for using MySQL, and for trying out Group Replication!