130 lines
7.5 KiB
Markdown
130 lines
7.5 KiB
Markdown
# MariaDB MaxScale 2.0.0 Release Notes
|
|
|
|
Release 2.0.0 is a Beta release.
|
|
|
|
This document describes the changes in release 2.0.0, when compared to
|
|
release 1.4.3.
|
|
|
|
For any problems you encounter, please consider submitting a bug
|
|
report at [Jira](https://jira.mariadb.org).
|
|
|
|
## License
|
|
|
|
The license of MaxScale has been changed from GPLv2 to MariaDB BSL.
|
|
|
|
For more information about MariaDB BSL, please refer to
|
|
[MariaDB BSL](https://www.mariadb.com/bsl).
|
|
|
|
## New Features
|
|
|
|
### Binlog-to-Avro Translator
|
|
|
|
The 2.0 release of MaxScale contains the beta release of the binlog-to-Avro
|
|
conversion and distribution modules. These modules allow MaxScale to connect to
|
|
a MariaDB 10.0 master server and convert the binary log events to Avro format
|
|
change records. These records can then be queries as a continuous JSON or raw Avro
|
|
stream using the new CDC protocol.
|
|
|
|
The [Avrorouter Tutorial](../Tutorials/Avrorouter-Tutorial.md) contains
|
|
information on how to get started with the binlog-to-Avro translation.
|
|
|
|
The [Avrorouter](../Routers/Avrorouter.md) documentation has more information
|
|
on the details of this conversion process and how to configure the module.
|
|
|
|
The [CDC Protocol](../Protocols/CDC.md) documentation contains the details of
|
|
the new protocol.
|
|
|
|
### Read Continuation upon Master Down
|
|
|
|
The _readwritesplit_ routing module now supports a high availability read mode
|
|
where read queries are allowed even if the master server goes down. The new
|
|
functionality supports three modes: disconnection on master failure, disconnection
|
|
on first write after master failure and error on write after master failure.
|
|
|
|
The MySQL monitor module, _mysqlmon_, now supports stale states for both the master
|
|
and slave servers. This means that when a slave loses its master, it will retain
|
|
the slave state as long as it is running.
|
|
|
|
For more details about these new modes, please read the [ReadWriteSplit](../Routers/ReadWriteSplit.md)
|
|
and [MySQL Monitor](../Monitors/MySQL-Monitor.md) documentation.
|
|
|
|
### Backend SSL
|
|
|
|
The configuration for a backend server can now be set for SSL connections from MaxScale. Although loosely referred to as SSL, this is nowadays the TLS security protocol. If, in MaxScale, a server is configured with SSL parameters then MaxScale will only connect to it using a secure protocol. MaxScale supports TLS versions 1.0, 1.1 and 1.2; which can be used will depend on the capability of the backend server. Once configured, if a secure connection cannot be made, attempts to connect to MaxScale that require that server will fail. An alternative that should be considered is the use of SSH tunnels.
|
|
|
|
For more information about backend SSL, please refer to
|
|
[Server and SSL](../Getting-Started/Configuration-Guide.md#server-and-ssl)
|
|
|
|
### Connection Throttling
|
|
|
|
The option now exists to set [max_connections](../Getting-Started/Configuration-Guide.md#max_connections) for a service. If a non-zero number is specified, then MaxScale will accept connection requests only up to the specified limit. Further connections will receive the error message "Too many connections" with error number 1040. .
|
|
|
|
### MaxAdmin Security Improvements
|
|
|
|
The way a user of MaxAdmin is authenticated has been completely changed.
|
|
In 2.0, MaxAdmin can only connect to MaxScale using a domain socket, thus
|
|
_only when run on the same host_, and authorization is based upon the UNIX
|
|
identity. Remote access is no longer supported.
|
|
|
|
When 2.0 has been installed, MaxAdmin can only be used by `root` and
|
|
other users must be added anew. Please consult
|
|
[MaxAdmin documentation](../Reference/MaxAdmin.md) for more details.
|
|
|
|
### Query Classifier
|
|
|
|
The query classifier component that MaxScale uses when deciding what
|
|
to do with a particular query has been changed. It used to be based
|
|
upon the MariaDB embedded library, but is now based upon sqlite3.
|
|
This change should not cause any changes in the behaviour of MaxScale.
|
|
|
|
For more information, please refer to
|
|
[Configuration Guide](../Getting-Started/Configuration-Guide.md#query_classifier).
|
|
|
|
## Bug fixes
|
|
|
|
[Here is a list of bugs fixed since the release of MaxScale 1.4.3.](https://jira.mariadb.org/browse/MXS-739?jql=project%20%3D%20MXS%20AND%20issuetype%20%3D%20Bug%20AND%20resolution%20in%20(Fixed%2C%20Done)%20AND%20fixVersion%20%3D%202.0.0)
|
|
|
|
* [MXS-821](https://jira.mariadb.org/browse/MXS-821): filestem router option for binlog router is not documented
|
|
* [MXS-814](https://jira.mariadb.org/browse/MXS-814): Service and monitor permission checks only use the last available server
|
|
* [MXS-813](https://jira.mariadb.org/browse/MXS-813): binlogrouter, mariadb10.0, signal 11, crash
|
|
* [MXS-801](https://jira.mariadb.org/browse/MXS-801): strip_db_esc should default to True
|
|
* [MXS-790](https://jira.mariadb.org/browse/MXS-790): replication_heartbeat table privilege is not checked / fails silently / is not documented
|
|
* [MXS-776](https://jira.mariadb.org/browse/MXS-776): Documentation about limitations of reload config is not clear
|
|
* [MXS-772](https://jira.mariadb.org/browse/MXS-772): RPM installation produces errors
|
|
* [MXS-766](https://jira.mariadb.org/browse/MXS-766): R/W router sends DEALLOCATE PREPARE to ALL instead of MASTER
|
|
* [MXS-739](https://jira.mariadb.org/browse/MXS-739): Maxinfo issuing invalid null's in JSON response
|
|
* [MXS-733](https://jira.mariadb.org/browse/MXS-733): MaxScale `list sessions` can report "Invalid State" for some sessions.
|
|
* [MXS-720](https://jira.mariadb.org/browse/MXS-720): MaxScale fails to start and doesn't log any useful message when there are spurious characters in the config file
|
|
* [MXS-718](https://jira.mariadb.org/browse/MXS-718): qc_mysqlembedded does not report fields for INSERT
|
|
* [MXS-704](https://jira.mariadb.org/browse/MXS-704): start/stop scripts use which in a non-silent manner
|
|
* [MXS-695](https://jira.mariadb.org/browse/MXS-695): MaxScale does not build on Debian 8 following build from source instructions
|
|
* [MXS-685](https://jira.mariadb.org/browse/MXS-685): 1.4.1: ReadWrite Split on Master-Master setup doesn't chose master, logs "RUNNING MASTER" error message instead (related to MXS-511?)
|
|
* [MXS-675](https://jira.mariadb.org/browse/MXS-675): QLA Filter Output Log Improvements
|
|
* [MXS-658](https://jira.mariadb.org/browse/MXS-658): Crash in embedded library when MariaDB 10.0 is used
|
|
* [MXS-653](https://jira.mariadb.org/browse/MXS-653): maxpasswd writes notice message to stdout
|
|
* [MXS-652](https://jira.mariadb.org/browse/MXS-652): ssl is configured in a wrong way, but Maxscale can be started and works
|
|
* [MXS-633](https://jira.mariadb.org/browse/MXS-633): Galera Monitor should not require the REPLICATION CLIENT privilege
|
|
* [MXS-631](https://jira.mariadb.org/browse/MXS-631): Rename and clean up macros.cmake
|
|
* [MXS-477](https://jira.mariadb.org/browse/MXS-477): readconnroute misinterprets data as COM_CHANGE_USER
|
|
* [MXS-419](https://jira.mariadb.org/browse/MXS-419): Socket creation failed due 24, Too many open files.
|
|
|
|
## 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 the Linux distributions supported
|
|
by MariaDB Enterprise.
|
|
|
|
Packages can be downloaded [here](https://mariadb.com/resources/downloads).
|
|
|
|
## 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 X.Y.Z. Further, *master* always refers to the latest released non-beta version.
|
|
|
|
The source code is available [here](https://github.com/mariadb-corporation/MaxScale).
|