Release Notes for MariaDB MaxScale 2.3.0

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

MariaDB MaxScale 2.3.0 was released on 2018-10-09. It is a beta release.

Key links:

New Features

  • Binary Log Router can now specify secondary Primary Servers when replicating from MariaDB Cluster.

  • Hints now supports the last hint, causing query to route to the same server as the previous query.

  • Back-end Connection ID's now shown in the MaxCtrl show session command output

  • Comment Filter can now prepend statement received with a comment before sending it further to the server.

  • Query Classifier now caches results of each classification.

  • Clients can now specify at runtime whether the Cache Filter should be used and/or populated.

  • End user can now specify the syslog facility and level for authentication errors.

  • MariaDB Monitor now evaluates disk space on recent MariaDB Server releases, switching over automatically when disk runs low.

  • Schema Router now capable of table family sharding.

  • Throttle Filter replaces and extends limit_queries functionality.

  • transaction_replay parameter added to Read/Write Splitter.

  • master_reconnetion parameter added to Read/Write Splitter.

  • delayed_retry parameter added to Read/Write Splitter.

  • causal_reads parameter added to Read/Write Splitter.

  • optimistic_trx parameter added to Read/Write Splitter.

  • ADAPTIVE_ROUTING load balancing method added to Read/Write Splitter.

  • MaxCtrl now supports interactive mode.

  • drain server command added to MaxCtrl.

  • Experimented Resultset Concatenation Router added to MaxScale.

  • Creation of services and filters at runtime added to REST API and MaxCtrl.

  • Router parameters of services can now be altered at runtime by REST API or MaxCtrl. Only supported by Read/Write Splitter.

  • Binary Log Filter module added to MaxScale.

  • Support for buffering network traffic added to MaxScale.

Changed Features

  • MaxAdmin list threads command shows the descriptor counts and load of MaxScale worker threads.

  • MaxCtrl create monitor command now accepts list of key-value parameters that are passed to the monitor as the last arguments.

  • query_retries default changed from 0 to 1.

  • Read/Writer Splitter session command history now enabled by default, but limited to 50 distinct session commands.

  • Cache Filter rules can now be set using a JSON array containing rule objects.

  • Masking Filter now by default rejects statement that use functions on conjunction with columns that should be masked.

  • ssl parameter now accepts boolean values in addition to required and disabled.

  • Data in diagnostic output of REST API for MariaDB Monitor changed, some fields removed and others added.

  • MariaDB Monitor now less likely to suddenly change the Primary Server, even if the other Primary has more Replica Servers than the current Primary.

  • The switchover command for MariaDB Monitor can now be called with just the monitor instance name.

  • MariaDB Monitor now measures replication lag using the Seconds_Behind_Master field of the SHOW SLAVE STATUS statement.

  • Named Server Filter source parameter can now contain a list of comma-separated addresses.

Deprecated Features

  • Binary Log Router router_options option has been deprecated.

  • thread_stack_size configuration parameter has been deprecated. MaxScale ignores the parameter.

  • MariaDB Monitor mysql51_replication option is no longer supported and ignored if set.

  • MariaDB Monitor multimaster option is no longer supported and ignored if set. MariaDB MaxScale automatically detects multi-primary configurations.

  • MariaDB Monitor allow_cluster_recover option is no longer supported and ignored if set, the feature is now always operational.

  • MariaDB Monitor detect_replication_lag option is no longer supported and ignored if set. As lag detection no longer writes to a database, this feature is always operational.

  • Removed the log_to_shm parameter and the --log=shm option.

  • Removed the MaxAdmin reload config command.

  • Removed router_options option for Avro Router.

  • Removed router_options option for Read/Write Splitter.

  • Removed QUERY-LAST-TRANSACTION and QUERY-TRANSACTION commands from CDC Protocol.

Bug Fixes

  • Fixes GTID values not updating when only Replica Servers are present. (MXS-2228)

  • Fixes GWBUF unnecessarily thread-safe. (MXS-2070)

  • Fixes slow valgrind startup. (MXS-2067)

  • Fixes QC canonicalization cache asserts with prepared statements. (MXS-2026)

  • Fixes MaxScale failover not working as expected. (MXS-2010)

  • Fixes replication of maxscale_schema when detect_replication_lag is true. (MXS-1994)

  • Fixes TSAN reporting data race in log_manager.cc. (MXS-1988)

  • Fixes removing all servers from services creates invalid persisted configurations. (MXS-1982)

  • Fixes Primary Server being take from last row of SHOW ALL SLAVES STATUS. (MXS-1964)

  • Fixes ASAN issue in Cache test programs. (MXS-1939)

  • Failover/switchover not disabling/enabling server events. (MXS-1937)

  • When forming a reading pool of Replica Servers, list servers does not show GTID's unless you add Primary Servers. (MXS-1898)

  • MaxAdmin command history saves duplicates of command. (MXS-1858)

  • multi_loaddata command connection closed by MaxScale. (MXS-1828)

  • Fixes output of [Total|Average] event queue length. (MXS-1823)

  • Fixes SHOW DATABASES statement only returning lowercase results. (MXS-1820)

  • Fixes requesting 16M-1 stmt_prepare command packet connection hangs. (MXS-1804)

  • Documents netmask limitations. (MXS-1772)

  • Fixes support for PAM group mapping like MariaDB Server. (MXS-1758)

  • Fixes MaxScale not detecting unknown global parameters. (MXS-1755)

  • Fixes failed rejoin leading to Replica Server with read-only set OFF. (MXS-1748)

  • Fixes changing maxscale_id for replication_heartbeat. (MXS-1741)

  • Fixes existing Read/Write Splitter connections not finding Primary Server after the Primary changes. (MXS-1737)

  • Revises documentation of monitor operation. (MXS-1680)

  • Fixes changing the Primary Server does not immediately close Read/Write Splitter session. (MXS-1610)

  • Fixes escape newlines in qlafilter output. (MXS-1511)

  • Fixes MaxScale considering servers with full disks as healthy. (MXS-1453)