MySQL Router 8.0 Release Notes
The bootstrap_server_addresses
configuration
option is deprecated in favor of the new
dynamic_config
option.
(Bug #28082857, Bug #91029, WL #11318)
A new dynamic configuration bootstrap feature was added that
tracks the current MySQL InnoDB Cluster Metadata servers. This
replaces the existing
bootstrap_server_addresses
option with the new
dynamic_config
option in
mysqlrouter.conf
.
MySQL Router now tracks and stores active MySQL
InnoDB Cluster Metadata server addresses and loads them if
Router is restarted. Previously, metadata server information was
defined during Router's initial bootstrap operation and stored
statically as bootstrap_server_addresses
in the
configuration file.
This new dynamic_config
option is generated by
--bootstrap
and is defined under
mysqlrouter.conf
's [DEFAULT] section. Its
value points to a generated JSON file named
state.json
that's initialized with
InnoDB Cluster Metadata server addresses and the group
replication ID; and additional information is added and updated
while Router is running.
The bootstrap process no longer defines
bootstrap_server_addresses
because
dynamic_config
replaces its functionality; and
these two options cannot be set at the same time. For backwards
compatibility, if only
bootstrap_server_addresses
is set then it
functions as it did in previous Router versions and this new
dynamic configuration functionality is not used.
(Bug #28082857, Bug #27015184, Bug #91029, WL #11318)
MySQL Router now persistently tracks the metadata server addresses
rather than only using the static list defined in the
configuration file using the
destinations
option.
(WL #11318)
The standalone MySQL Router zip file did not include its own copy of the OpenSSL libraries, so the Router binary would not start unless the MySQL Server zip file was also installed on the host. (Bug #29132062)
The copyright years in the README
and
LICENSE
files were not synced.
(Bug #29045945)
The --version
output was aligned with MySQL
Server's layout.
(Bug #28899194)
Router would unexpectedly halt upon receiving an unexpected packet; now an exception is thrown. (Bug #28793334)
Solaris MySQL Router packages would not function with MySQL Server 8.0.13 due to an incorrect CMake rpath value. (Bug #28730189)
Linking Router against libmsyqlclient that was built with DBUG enabled led to slow Router shutdown procedures. (Bug #28656618)
Fixed a thread shutdown race condition. (Bug #28610484)
Sending mysqlrouter a SIGTERM would take at least 100ms to shut down. Now a concurrent plugin shutdown queue was added to speed up the shutdown process. (Bug #28570122)
A metadata-cache API method was added to check the initialization status. Routing plugins use this during initialization to safely register the callbacks after metadata-cache is initialized. (Bug #28569717)
Installing MySQL Server with Router from source or building a tarball with "make package" would create a top level "data/" directory as part of the "Router" component. Due to possible collisions with MySQL Server, "data/" was changed to "var/lib/mysqlrouter". (Bug #28537733)
The connection error counter that blocks clients after
max_connect_errors
connection errors did not reset after a successful connection.
(Bug #27995042, Bug #90809)
The MySQL metadata server's
connect_timeout
default value changed from 30 to 15 seconds.
(Bug #27326466)