# MariaDB MaxScale 2.3.1 Release Notes -- 2018-11-20 Release 2.3.1 is a Beta release. This document describes the changes in release 2.3.1, when compared to the previous release in the same series. For any problems you encounter, please consider submitting a bug report on [our Jira](https://jira.mariadb.org/projects/MXS). ## Changed Features ### Unknown global parameters Unknown global parameters or parameters with invalid values are now treated as errors. If MaxScale refuses to start after upgrading to 2.3.1, check whether it is due to an unknown global parameter. ### REST-API #### `/v1/sessions` The response will, if the feature has been enabled with the `retain_last_statements` parameter, either globally or specifically for a service, contain information about the last queries executed by a session. ### Binlog Router Secondary masters can now be specified also when file + position based replication is used. Earlier it was possible only in conjunction with GTID based replication. ### `mmmon` and `ndbclustermon` Both of these modules have been deprecated and will be removed in a future release. The functionality in `mmmon` has been largely obsoleted by the advancements in `mariadbmon`. The `ndbclustermon` is largely obsolete due to the fact that there are virtually no users who use it. ## Deprecated features The following configuration file options have been deprecated and will be removed in 2.4. #### Global section * `non_blocking_polls`, ignored. * `poll_sleep`, ignored. * `thread_stack_size`, ignored. #### Services and Monitors * `passwd`, replaced with `password`. ### MaxAdmin MaxAdmin has been deprecated in favor of the REST API and MaxCtrl. It will be removed in a later release. In addition to this the commands `set pollsleep` and `set nbpolls` have been deprecated and will be removed already in 2.4. ### MaxInfo The `maxinfo` router has been deprecated and will be removed in a later release. ### Debugcli The `debugcli` module has been deprecated and will be removed in 2.4. ## New Features ### ColumnStore Monitor The new `csmon` monitor can be used to monitor ColumnStore clusters where the primary UM will be assigned as the master and secondary UMs as slaves. Automatic detection of the primary UM is supported with ColumnStore versions 1.2.1 and newer. For older versions the primary UM must be designated with the `primary` parameter of the monitor. Read the [csmon documentation](../Monitors/ColumnStore-Monitor.md) for more information on how to use it. ### MaxCtrl There is now a new command `classify ` using which it can be checked if and how MaxScale classifies a specific statement. This feature can be used for debugging, if there is suspicion that MaxScale sends a particular statement to the wrong server (e.g. to a slave when it should be sent to the master). ### Services The global configuration parameter `retain_last_statements` can now also be specified separately for individual services. ### Watchdog If MaxScale is running as a systemd service, the systemd Watchdog can be enabled and MaxScale will behave accordingly. Please see the [documentation](../Getting-Started/Configuration-Guide.md#systemd-watchdog) for more details. By default the watchdog is disabled. *NOTE*: In 2.3.1 there is a deficiency that manifests itself so that if _any_ administrative operation, performed using _maxctrl_ or _maxadmin_, takes longer that the specified watchdog timeout, then the watchdog will kill and restart MaxScale. Please take that into account before enabling the watchdog. ### Miscellaneous * [MXS-2141](https://jira.mariadb.org/browse/MXS-2141) Retry read on master when causal_reads timeout is exceeded * [MXS-2122](https://jira.mariadb.org/browse/MXS-2122) Immediately close the listening socket when a listener is destroyed * [MXS-2077](https://jira.mariadb.org/browse/MXS-2077) Provide more information in list clients output. * [MXS-1976](https://jira.mariadb.org/browse/MXS-1976) MaxAdmin Shutting Down A Service should specify / warn that new session requests are neither accepted nor denied. ## Bug fixes * [MXS-2147](https://jira.mariadb.org/browse/MXS-2147) Luafilter is missing symbols * [MXS-2144](https://jira.mariadb.org/browse/MXS-2144) Doing a controlled shutdown doesn't trigger query retrying * [MXS-2142](https://jira.mariadb.org/browse/MXS-2142) Default timeout value for causal_reads is excessive * [MXS-2140](https://jira.mariadb.org/browse/MXS-2140) Enabling transaction_replay at runtime doesn't enable implicit parameters * [MXS-2139](https://jira.mariadb.org/browse/MXS-2139) transaction_replay doesn't implicitly enable master_failure_mode=fail_on_write * [MXS-2136](https://jira.mariadb.org/browse/MXS-2136) passwd errors out as a attribute in [monitor] and [service] in maxscale.cnf * [MXS-2121](https://jira.mariadb.org/browse/MXS-2121) Listeners defined in the configuration cannot be destroyed * [MXS-2109](https://jira.mariadb.org/browse/MXS-2109) query_classifier_cache_size is per thread * [MXS-2107](https://jira.mariadb.org/browse/MXS-2107) writeq_high_water doesn't work * [MXS-2100](https://jira.mariadb.org/browse/MXS-2100) Unknown global parameters are not detected * [MXS-2098](https://jira.mariadb.org/browse/MXS-2098) maintenance_on_low_disk_space does not work * [MXS-2096](https://jira.mariadb.org/browse/MXS-2096) SELECT ... INTO OUTFILE is routed to all back end servers * [MXS-2055](https://jira.mariadb.org/browse/MXS-2055) Monitor REST-API documentation * [MXS-1978](https://jira.mariadb.org/browse/MXS-1978) SELECT INTO OUTFILE is routed to all servers ## Known Issues and Limitations There are some limitations and known issues within this version of MaxScale. For more information, please refer to the [Limitations](../About/Limitations.md) document. ## Packaging RPM and Debian packages are provided for supported the Linux distributions. Packages can be downloaded [here](https://mariadb.com/downloads/mariadb-tx/maxscale). ## Source Code The source code of MaxScale is tagged at GitHub with a tag, which is identical with the version of MaxScale. For instance, the tag of version X.Y.Z of MaxScale is `maxscale-X.Y.Z`. Further, the default branch is always the latest GA version of MaxScale. The source code is available [here](https://github.com/mariadb-corporation/MaxScale).