Documentation Home
MySQL Router Release Notes
Related Documentation Download these Release Notes
PDF (US Ltr) - 165.3Kb
PDF (A4) - 164.9Kb

MySQL Router Release Notes  /  Changes in MySQL Router 8.0.17 (2019-07-22, General Availability)

Changes in MySQL Router 8.0.17 (2019-07-22, General Availability)

Functionality Added or Changed

  • Added the use_gr_notifications [metadata-cache] option to enable Group Replication notifications, which is disabled by default. It supports group_replication/membership/quorum_loss, group_replication/membership/view, group_replication/status/role_change, and group_replication/status/state_change.

    Optionally use the new --conf-use-gr-notifications bootstrap command-line to enable this option in the generated configuration file. (WL #10719)

  • Added a REST API that follows the OpenAPI 2.0 specification and is implemented as a plugin; load the plugin using [rest_api] in the configuration file. It also requires the http_server plugin. Use the optional require_realm configuration option (string) to define the authentication realm.

    The base-path for all REST endpoints is "api" followed by a numeric API version that is defined as the release date, such as "/api/20190715/". The system follows camelCase naming rules and errors follow RFC 7807. The system exposes a swagger.json file as /api/ {apiVersion}/swagger.json. (WL #8965)

Bugs Fixed

  • Bootstrapping could misclassify a hostname as IPv6 and surround it with square brackets in the state (state.json) file; and this produced a "Configuration error: cluster-metadata-servers is incorrect" error. A workaround was to disable ipv6 support on the system. (Bug #29876948, Bug #95531)

  • Starting the http_server plugin against a port that was already bound would yield a confusing error, such as "Error: bind(' failed: The operation completed successfully." (Bug #29823472)

  • Improved the connection counter logic to prevent a potential unexpected halt before completing the shutdown process. (Bug #29820725)

  • Requesting the metadata-cache health immediately after start up could cause an expected exit by get_destinations() if metadata_cache's cache-api was not yet initialized. (Bug #29820155)

  • Bootstrapping would fail on hosts that defined multiple network interfaces. (Bug #29814629)

  • Optimized logging mechanism; system generated log messages independent of the log level. Now log messages are only prepared if configured to do so. (Bug #29798420)

  • Fixed potential blocking during shutdown by adding proper libmysqlclient deinitialization where needed. This bug only affected DEBUG builds. (Bug #29635378)

  • harness/CMakeLists.txt was renamed to harness/src/CMakeLists.txt. (Bug #29629788)

  • The loaded plugin message level was changed from level "info" to "debug". (Bug #29616101)

  • The bootstrap "invalid URI" error message was improved. (Bug #29609170)

  • HTTPS connections with ECDHE ciphers to Router's http_server component failed if built against OpenSSL 1.0.1. (Bug #29609052)

  • The file generated by mysqlrouter_passwd was world-readable, and is now user-readable (Bug #29589127)

  • For the REST API, unsupported query parameters now return the 400 HTTP status code; and remain ignored. (Bug #29556935)

  • Log lines above 512 characters were truncated. (Bug #29540910)

  • For the REST API, OPTION, TRACE, and CONNECT requests now return the application/problem+json Content-Type and 405 HTTP status code. (Bug #29539557)

  • The HTTP server component now supports .jpg/.jpeg image files, and file extension matches are now case-insensitive. (Bug #29508595)

  • Added Visual Studio 2019 support. (Bug #29454252)

  • An unknown [http_auth_realm] backend yielded an unclear error. (Bug #29421759)

  • An uncaught exception was generated if a client socket was shutdown the client peer address was retrieved. (Bug #29382585)

  • Misleading "Potential changes detected in cluster" warnings were added to Router's log file. Node order differences no longer cause these errors. (Bug #29264764, Bug #94060)

  • Router would start if bootstrap_server_addresses was empty or not set. Now Router fails to start in this case if cluster-metadata-servers (a dynamic-config attribute) is also empty. (Bug #28352482)

  • The .ini configuration file locations are now detected and displayed in --help output. (Bug #28261802)

  • With Debian packages, the bootstrap process could fail when used with the --directory option. (Bug #27034449)