Databases 5 min read

MySQL 8.0.16 Introduces Message Fragmentation for Group Replication

MySQL 8.0.16 adds a message‑fragmentation feature to Group Replication that splits oversized broadcast messages into smaller chunks, allowing administrators to set a maximum message size and preventing false member expulsions caused by large payloads.

Aikesheng Open Source Community
Aikesheng Open Source Community
Aikesheng Open Source Community
MySQL 8.0.16 Introduces Message Fragmentation for Group Replication

MySQL 8.0.16 has been released and, as usual, it enhances the Group Replication feature.

This article introduces the new functionality brought by MySQL 8.0.16 to Group Replication: Message fragmentation.

Background – Group Replication currently uses XCom, a single‑threaded group communication engine that guarantees atomicity and member‑state detection. Each member forwards messages to its local XCom instance, which then delivers them to all other members in the same order. When a member broadcasts a very large message, the XCom thread spends a long time processing it; if the thread is busy for too long, the member may be mistakenly considered failed and expelled from the group.

MySQL 8.0.13 introduced the system variable group_replication_member_expel_timeout , allowing administrators to adjust the timeout before a member is expelled, providing a trade‑off between quick failure detection and allowing busy members to finish processing large messages.

Message fragmentation – MySQL 8.0.16 adds a feature that automatically fragments oversized messages. Administrators can set a maximum allowed size with the variable group_replication_communication_max_message_size (default 10 MiB). Messages larger than this limit are split into smaller chunks before being sent.

Example – When a green member broadcasts a message that exceeds the configured limit, the following steps occur:

If the message size exceeds group_replication_communication_max_message_size , the member divides the message into chunks not larger than the limit.

Each chunk is broadcast to the group via XCom as an independent fragment.

XCom delivers the fragments to all members.

Receiving members recognize each fragment as part of a larger message and buffer them.

Once all fragments are received, the members reassemble the original message and process it.

The article includes diagrams (Figures 1, 2a‑2c) illustrating the fragmentation and reassembly process.

Conclusion – After the release of MySQL 8.0.16, Group Replication can enforce a user‑defined maximum message size, preventing the group from mistakenly expelling members due to oversized messages.

Reference: https://mysqlhighavailability.com/enhanced-support-for-large-transactions-in-group-replication/

MySQLDatabase High AvailabilityGroup ReplicationMessage FragmentationXCom
Aikesheng Open Source Community
Written by

Aikesheng Open Source Community

The Aikesheng Open Source Community provides stable, enterprise‑grade MySQL open‑source tools and services, releases a premium open‑source component each year (1024), and continuously operates and maintains them.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.