Dear MySQL users, MySQL Router 8.0.3 dmr is the first development release for MySQL Router 8.0 series.
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.3 dmr, see the "Development 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.3 (2017-09-29, Development Milestone) MySQL Connectors and other MySQL client tools and applications now synchronize the first digit of their version number with the (highest) MySQL server version they support. This change makes it easy and intuitive to decide which client version to use for which server version. MySQL Router now uses the same version number as MySQL Server. MySQL Router 8.0.3 is the first release to use the new numbering. It is the successor to MySQL Router 2.1.4. Functionality Added or Changed * The quorum calculation was adjusted to take into account the RECOVERING node status. In other words, the calculation was changed from have_quorum = (online_nodes > all_nodes/2) to have_quorum = (online_nodes + recovering_nodes > all_nodes/2). For routing purposes, RECOVERING is still seen as UNREACHABLE. * TERM and INT signal handlers were added. * Graceful shutdown and restart support was improved. For example, if Router is being run from the console then Control + C will cleanly stop Router and its loaded plugins. Likewise, killing the process (Linux) or service (Windows) will also gracefully shut down Router. * Some errors were not logged if MySQL Router exited unexpectedly, and these errors were sent to stderr instead of the logging mechanism defined by Router's configuration file. These errors included failure to write or find PID files, if no Router plugins were configured, if metadata_cache was defined twice, and if a configured user did not exist. * A new mysqlrouter_plugin_info utility was added to help debug MySQL Router plugins. It provides information such as the plugin version, description, ABI version, requirements, and function pointers. Bugs Fixed * On some Linux variants (such as Ubuntu), the Router installation would set the owner as mysqlrouter:adm instead of mysqlrouter:mysqlrouter for generated directories. (Bug #26530142) * On Windows, if a plugin failed to load, Router would exit without unloading the plugin. (Bug #26434831) * Removed the MySQL Connector specific "MySQL FOSS License Exception" from the README file. (Bug #26361093) * The generated start.sh file contained a bogus sudo reference that made sudo.sh usage require sudo privileges. (Bug #25853768) * To fall in line with other MySQL binaries, -? is now used instead of -h as a short form for the --help option. (Bug #25813290) * To fall in line with other MySQL binaries, -V is now used instead of -v as a short form for the --version option. (Bug #25813190) * Router would not exit after failing to bind to a port despite posting "Bind Address can not be part of destinations" to the error log. (Bug #23501906, Bug #81643) On behalf of Oracle MySQL Release Team Balasubramanian Kandasamy