Galera Cluster for MySQL 5.7.42 and MySQL 8.0.33 released

Codership is pleased to announce a new Generally Available (GA) release of the multi-master Galera Cluster for MySQL 5.7, consisting of MySQL-wsrep 5.7.42 (release notes, download) and MySQL-wsrep 8.0.33 (release notes, download), with Galera replication library 4.15 (release notes, download) implementing wsrep API version 26. This release incorporates all changes to MySQL 5.7.42 and MySQL 8.0.33 respectively, adding a synchronous option for your MySQL High Availability solutions.

For MySQL 5.7, one should continue using the Galera replication library 3.37 implementing the wsrep API version 25 for MySQL-wsrep 5.7.32. One can presume that unless there is a bug, we will not be releasing a new version of the library, as MySQL 5.7 goes End of Life (EOL) in October 2023. We strongly encourage you to upgrade from MySQL-wsrep 5.7 to MySQL-wsrep 8.0. We are organizing a webinar: Upgrade your MySQL 5.7 and older Galera Clusters to MySQL 8.0 with no downtime to help you get started on your upgrade path.

In MySQL 5.7.42-25.34, while inside a stored function or trigger, the current statement transaction should not allow a commit or a rollback. This is also implemented in MySQL 8.0.33-26.14.

In the Galera replication library 4.15 for MySQL 8.0.33-26.14, an assertion is relaxed when Galera is configured with commit order disabled. When the certificate index is preloaded, an assertion in handle_ist_trx_preload() fails if the first handled IST preload write set as has failed certigication, and incrementing the index position caused the certificate index to end up with the wrong position; this is now fixed by appending the dummy writeset sequence numbers into Certification::trx_map_. An ASAN reported memory leak was fixed if gcs is closed after becoming joined but before reaching synced state.

In MySQL 8.0.33-26.14, nodes now use the same server UUID (generated on the seed node) to binlog events that don’t go through wsrep, thus making histories comparable provided the user executes such operations in an agreed order on all the nodes. Previously, the nodes kept generating their own individual server UUIDs. In addition, there is a new configuration variable wsrep_sync_server_uuid, if set to true, the node respects server UUID received from the donor node; otherwise the node generates its own server UUID. This concerns binary log events not replicated via wsrep which continues to be logged with cluster UUIDs. Note that the default is still such that all nodes generate their own server UUIDs.

In wsrep_start_position, you will now see the wsrep GTID position, local seqno for asynchronous replication, server ID and server UUID all in one slash-separated argument.

When it comes to the clone SST script, there were instances where the datadir needed initialising, and this is now fixed. In some Linux distributions, xtrabackup installs plugins under lib64 as opposed to lib, now we search for both locations.

This MySQL 8.0.33-26.14 is a recommended upgrade as it fixes some issues around parallel replication and the binary log. For one, asynchronous parallel replication enforces the same commit order in the replica as was in the replication source, by default, and is configurable by replica_preserve_commit_order while parallel apply is configured by replica_parallel_workers=4(the default). The replication worker now waits for the asynchronous replication commit order of the replication source before calling for wsrep replication. We noticed an issue with server aborts, when the binary log is rotated upon reaching the maximum size. This was caused by an upstream optimization that skips blocking operations of compressing the GTID set during storing them into the GTIDs table during the binary log rotation. We now thus skip the wsrep commit hooks execution for implicit internal transaction of storing the GTIDs. It is worth reading more about replica_parallel_workers, especially in the upstream documentation as there have been changes in 8.0.27 and 8.0.30. If you have noticed queries being stuck, while waiting for handler, this MySQL 8.0.33 upgrade is right for you.

Please download the latest software and update your Galera Clusters! We continue to provide repositories for popular Linux distributions, and we encourage you to use them. Contact us more more information about what Galera Cluster Enterprise Edition can do for you.