Dear MySQL users,
MySQL Router 8.0.20 is a new release for MySQL Router 8.0 series.
MySQL Router 8.0 is highly recommended for use with MySQL Server 8.0 and 5.7.
Please upgrade to MySQL Router 8.0.20.
The MySQL Router is a new building block for high availability solutions
based on MySQL InnoDB clusters.
By taking advantage of the new Group Replication technology, and
combined with the MySQL Shell, InnoDB clusters provide an integrated
solution for high availability and scalability for InnoDB based MySQL
databases, that does not require advanced MySQL expertise.
The deployment of applications with high availability requirements is
greatly simplified by MySQL Router. MySQL client connections are
transparently routed to online members of a InnoDB cluster, with MySQL
server outages and cluster reconfigurations being automatically handled
by the Router.
To download MySQL Router 8.0.20, see the "General Availability (GA)
Releases" tab at
http://dev.mysql.com/downloads/router. Package
binaries are available for several platforms and also as a source code
download.
Documentation for MySQL Router can be found at
http://dev.mysql.com/doc/mysql-router/en/
Enjoy!
------------------------------------------
Changes in MySQL Router 8.0.20 (2020-04-27)
* Functionality Added or Changed
* Bugs Fixed
Functionality Added or Changed
* Added additional functionality to configure the PID file
location. This adds the --pid-file (command-line) and
pid_file (configuration file) options. Setting the
ROUTER_PID environment variable remains as the other
option.
The PID file cannot be set while executing the
--bootstrap option. (Bug #30510827)
* Added metadata_cache support for [http_auth_backend]; set
backend=metadata_cache to use it. Also added the optional
auth_cache_refresh_interval and auth_cache_ttl options to
configure its use.
* Added two new log levels: "system", which is higher than
"error", and "note", which is between "info" and "debug".
Bugs Fixed
* Router's default data directory on Debian
(/var/run/mysqlrouter) was not preserved between system
resets. Both the keyring and state.json files were stored
here, so Router could not function after a system reset.
Now /var/lib/mysqlrouter is used instead. In addition,
the installation process now detects and moves an
existing configuration file to the new location. (Bug
#31029334, Bug #98914)
* Routing failed for an InnoDB Cluster using metadata 2.0
(Shell 8.0.19+) when the primary was removed using
Shell/AdminAPI cluster.remove_instance(). Routing failed
because Router flushed the routing table as a precaution.
(Bug #30733189)
* Added missing raise statement when queue is full. Thanks
to Rastislav Masaryk for the patch. (Bug #30643277, Bug
#97938)
* Internal metadata queries were affected by global MySQL
Server settings; but now Router explicitly sets session
parameters to make metadata queries and updates
consistent. These settings are
group_replication_consistency, autocommit, sql_mode,
character_set_client, character_set_results, and
character_set_connection. (Bug #30631442, Bug #97764)
* Router renamed its main thread from "mysqlrouter" to
"main" to make debugging easier, but this meant executing
"killall mysqlrouter" would not find the process; and
instead "killall main" did. The process is no longer
renamed. (Bug #30611421)
* Reviewed help text and error messages throughout MySQL
Router's interface; and improved readability. (Bug
#30523166, Bug #30889974, Bug #29138501, Bug #29132761,
Bug #30895659, Bug #29428293, Bug #29132728, Bug
#29361447)
* Group Replication notifications (use_gr_notifications)
would log warnings about a missing mysqlx_wait_timeout
MySQL system variable when used against MySQL 5.7 as this
variable was added in MySQL 8.0. This warning is no
longer present. (Bug #30478016, Bug #97414)
* With apparmor active (Ubuntu/Debian), bootstrap failed as
it could not write a temporary (state) file as Router's
apparmor profile didn't allow writing to
(var)/run/mysqlrouter. The apparmor profile was updated
accordingly.
With apparmor active (Ubuntu/Debian), Router ignored the
global SSL configuration; the apparmor profile was
updated to read /etc/ssl/openssl.conf. (Bug #30339399)
* The MySQL Router configuration file required a trailing
newline. (Bug #28970487)
* Improved error reporting when handling dissolved
clusters. For example, the error text "The provided
server contains an unsupported InnoDB cluster metadata."
was changed to "Expected the metadata server to contain
configuration for one cluster, found none." (Bug
#28365867)