Release Notes for MariaDB MaxScale 2.4.0

MariaDB MaxScale is an advanced database proxy, firewall, and query router. MaxScale is a component of MariaDB Platform.

MariaDB MaxScale 2.4.0 was released on 2019-06-29. It is a beta release.

Key links:

New Features

  • Support added for the Clustrix monitor.

  • Support added for the Smart Router.

  • Support added to MaxCtrl for draining servers.

  • Support added for socket parameter, allowing MaxScale to use UNIX domain sockets for server modules.

  • Support added for cluster parameter for services.

  • Support added for suffixes h, m, s, and ms for specifying duration in configuration files.

  • Query Classifier Cache can now be examined through MaxCtrl or the REST API.

  • Support added for throttling connection attempts.

  • Default version for REST API and MaxCtrl is optional. Defaults to /v1.

  • Support added to REST API and MaxCtrl for --force option with set server command. Closes all connections to given server when it's set in maintenance mode.

  • Support added for command history to MaxCtrl.

  • MaxCtrl alter now supports multiple key-value pairs in one command.

  • Read/Write Splitter now applies transaction replays in conjunction with server initiated transaction rollbacks.

  • Adds the transaction_replay_attempts parameter, to set the number of errors can occur before the Read/Write Splitter ceases replay attempts.

  • Adds the lazy_connect parameter, delaying the opening of all connections for the Read/Write Splitter until they're needed.

  • New connections created by Read/Write Splitter at start of session are now always used in connection counts.

  • Read/Write Splitter now load balances connections to Primary Server in cases where there are multiple Primary Servers.

  • Read/Write Splitter now allows open transactions to finish if the Primary Server is put in maintenance mode.

  • Galera Monitor now correctly assigns Replica status when the Replica Server treats a Cluster Node as its Primary Server.

  • Cluster Nodes now display their Global Transaction ID positions in MaxCtrl list servers output.

  • Avro Router now supports direct replication.

  • MariaDB Monitor now supports enforce_simple_topology parameter.

Changed Features

  • MaxScale fails to start if section or object names begin with @@, this is now reserved for MaxScale itself.

  • MaxScale fails to start if section or object names contain whitespace (deprecated in 2.2).

  • Support added for SO_REUSEPORT capability offered by Linux kernel 3.9+. Allows multiple MaxScale instances running on the same server to bind on the same listener port.

  • MaxScale now stores user passwords as SHA2-512 hashes. New users use the stronger algorithm. Existing users continue to use MD5 hashes. Recreate the user to upgrade.

  • REST API now requires the protocol parameter when creating a server module.

  • Encrypting connections to the server requires that you define the TLS parameters when creating a server module.

  • The weightby option for server modules replaced by the rank option.

Deprecated Features

  • MaxAdmin no longer supports enabling TLS at runtime. Use MaxCtrl to create servers with TLS configuration.

  • Removed the debugcli router.

  • Removed the telenetd protocol.

  • Removed the ndbclustermon monitor.

  • Removed the mmmon monitor.

  • Removed the mysql51_replication, multimaster, and allow_cluster_recovery options from the mariadbmon monitor

  • Deprecates the mqfilter filter. It will be removed in a future release.

  • Removed example scripts and configuration files for Nagios.

Bug Fixes

  • Fixes REST API allowing POST requests without body for basic users. (MXS-2825)

  • Fixes PATCH with invalid credentials returning no results. (MXS-2575)

  • Fixes MaxCtrl list server command failing when servers are on UNIX sockets. (MXS-2565)

  • Fixes inefficient loading of users. (MXS-2558)

  • Fixes querying of database users through MaxCtrl. (MXS-2493)

  • Fixes raising of FATAL when running multiple parallel inserts on Clustrix nodes with Read/Write Splitter. (MXS-2487)

  • Fixes ignore_database option documentation for Schema Router. (MXS-2477)

  • Fixes manual cancellation of outstanding delay calls when nodes change. (MXS-2468)

  • Fixes stale information showing in MaxCtrl on changing bootstrap nodes. (MXS-2463)

  • Fixes -ve numbers showing with Clustrix in MaxCtrl list servers output. (MXS-2448)

  • Fixes error when attempting to run MaxCtrl. (MXS-2447)

  • Fixes USE command causing signal 11 with TPM Filter. (MXS-2385)

  • Fixes segmentation fault with develop on prepared_statement test from 2.2 branch. (MXS-2341)

  • Fixes SO_SNDBUF and SO_RCVBUF being hard coded. (MXS-2312)

  • Fixes issue where only one parameter can be altered at a time. (MXS-2307)

  • Fixes no error being raised when monitor fails to start after being created via REST API. (MXS-2306)

  • Fixes multiple comments in query stopping hints from working. (MXS-2302)

  • Fixes Hunt Filter accepting invalid comment syntax. (MXS-2289)

  • Fixes queries with brackets being classified as unknown. (MXS-2210)

  • Fixes missing tarball installation steps in documentation. (MXS-2198)

  • Fixes mysql CLIshell. (MXS-2172)

  • Fixes MaxScale failing to start when PID file exists and points to same process. (MXS-2170)

  • Fixes Server losing stale replica status when MaxScale restarts. (MXS-1966)