Release Notes for MariaDB MaxScale 2.5.28
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB MaxScale 2.5
Topics on this page:
Overview
MariaDB MaxScale is an advanced database proxy and query router.
MariaDB MaxScale 2.5.28 was released on 2023-08-21. This release is of General Availability (GA) maturity.
This document describes the changes in MaxScale 2.5.28 when compared to MaxScale 2.5.27.
Notable Changes
force_connection_keepaliveparameter added, with default valuefalse. (MXS-4720)When
force_connection_keepalive=false(the default), connection keepalive pings are sent only if the client is executing a query or has been idle for less than the duration configured inconnection_keepaliveWhen
force_connection_keepalive=true, keepalive pings are sent unconditionally to any backends that have been idle for longer thanconnection_keepaliveseconds. This option can be used to emulate MaxScale's behavior prior to version 2.5.21 for cases where long-lived application connections rely on the old unconditional keepalive pings.When
force_connection_keepalive=trueandconnection_keepalivein MaxScale is set to a lower value thanwait_timeouton the database, the timeouts controlled bywait_timeoutwill no longer be effective. In this circumstance, MaxScale unconditionally sends pings which make the client behave like it is not idle, so the connections will not be killed bywait_timeout.
For MariaDB Monitor (
mariadbmon),GRANTguidance has changed: (MXS-4672)For complete instructions, see MariaDB Monitor.
For MariaDB Server 10.5.2 and above, it is recommended that
CONNECTION ADMINprivilege be granted, since it allows the monitor to log in even if the server connection limit has been reached.GRANT CONNECTION ADMIN ON *.* TO 'maxscale'@'maxscalehost';Certain privileges are required if performing cluster management operations. For MariaDB Server 11.0.1 and above, the
SUPERprivilege no longer conveys certain fine-grained privileges, so these must be granted directly.GRANT RELOAD, PROCESS, SHOW DATABASES, EVENT, SET USER, READ_ONLY ADMIN ON *.* TO 'maxscale'@'maxscalehost'; GRANT REPLICATION SLAVE ADMIN, BINLOG ADMIN, CONNECTION ADMIN ON *.* TO 'maxscale'@'maxscalehost'; GRANT SELECT ON mysql.user TO 'maxscale'@'maxscalehost';
Privilege
Purpose
BINLOG ADMINDelete binary logs (during
reset-replication)CONNECTION ADMINKill connections
EVENTList and modify server events
PROCESSAllows check whether the
event_schedulerprocess is runningREAD_ONLY ADMINAllows
read_onlyto be setRELOADFlush binary logs
REPLICA MONITORView and manage replication connections
REPLICATION SLAVE ADMINView and manage replication connections
SELECTonmysql.userView which users have
SUPERSET USERList and modify server events
SHOW DATABASESList and modify server events
If a separate replication user is defined (with
replication_userandreplication_password),REPLICATION SLAVEprivilege is required.CREATE USER 'replication'@'replicationhost' IDENTIFIED BY 'replication-password'; GRANT REPLICATION SLAVE ON *.* TO 'replication'@'replicationhost';
Issues Fixed
Can result in data loss
With Binlog Router (
binlogrouter), if a large transaction results in the creation of a binlog file larger than 4GB, that binlog file is corrupt. (MXS-4691)With Binlog Router (
binlogrouter), large transactions are skipped, resulting in data inconsistency on a slave. (MXS-4677)
Can result in a hang or crash
With Binlog Router (
binlogrouter), if the transaction being replicated does not fit in memory, the process will be killed or astd::bad_allocwill be thrown. (MXS-4690)With
mariadbclient, possible hang whenconnection_init_sql_filequeries are executed. (MXS-4719)
Can result in unexpected behavior
Encrypted passwords can be persisted in plain-text. (MXS-4681)
With Binlog Router (
binlogrouter), GTID values are compared as 32-bit integers rather than 64-bit integers. (MXS-4700)With Binlog Router (
binlogrouter), a new binlog is always opened upon startup. (MXS-4695)With Galera Monitor (
galeramon), replication lag is not updated for replicating servers. (MXS-4721)With MariaDB Monitor (
mariadbmon), switchover can fail with anUnknown thread iderror (1094). (MXS-4675)With MariaDB Monitor (
mariadbmon),GTIDupdates may block REST API traffic. (MXS-4701)With MariaDB Monitor (
mariadbmon),ALTER EVENTfailure is not detected on MariaDB 11.0 and above. (MXS-4684)The query classifier does not correctly parse a
RENAMEstatement. (MXS-4714)With Read/Write Split Router (
readwritesplit), interrupted queries are retried even if all backends have encountered a permanent failure. (MXS-4696)Starting with this release, retries are not performed if all backends have encountered a permanent failure, resulting in faster reporting of errors to the client.
With Xpand Monitor (
xpandmon), diagnostic output duplicates the configuration information already returned byshow monitor. (MXS-4664)When
SHOW SLAVE STATUSis executed with Binlog Router (binlogrouter), the output is not consistent with the output shown when executed with MariaDB Server. (MXS-4613)In previous releases, the output showed the MaxScale node's latest local log file and position in the
Master_Log_FileandRead_Master_Log_Poscolumns, and the output showed empty strings in theRelay_Log_FileandRelay_Log_Poscolumns.Starting with this release, the output shows the latest log file and position replicated from the primary server in the
Master_Log_FileandRead_Master_Log_Poscolumns, and the output shows the MaxScale node's latest local log file and position in theRelay_Log_FileandRelay_Log_Poscolumns.
Supplemental Notes
Enum values are case-sensitive. (MXS-4722)
For example,
slave_selection_criteria=LEAST_CURRENT_OPERATIONSis correct whileslave_selection_criteria=least_current_operationsis not correct.
Platforms
In alignment to the MariaDB Corporation Engineering Policy, MariaDB MaxScale 2.5.28 is provided for:
CentOS 7 (x86_
64) Debian 10 (x86_
64, ARM64) Debian 11 (x86_
64, ARM64) Debian 12 (x86_
64, ARM64) Red Hat Enterprise Linux 7 (x86_
64) Red Hat Enterprise Linux 8 (x86_
64, ARM64) Red Hat Enterprise Linux 9 (x86_
64, ARM64) Rocky Linux 8 (x86_
64, ARM64) Rocky Linux 9 (x86_
64, ARM64) SUSE Linux Enterprise Server 15 (x86_
64, ARM64) Ubuntu 20.04 (x86_
64, ARM64)
