MySQL Workbench 8.0.16 has been released
rtical toolbar was used to add each table. (Bug #29056873) * Records imported from an external file, such as a CSV file, generated an exception when the operation was attempted from a macOS host. (Bug #29048933) * Each step shown in the MySQL Workbench Migration Wizard was masked and unreadable while the individual operation executed. This fix modifies the contrast between the text of the current step and the box used to highlight it. (Bug #29048871) * On Windows 10, the scroll wheel (or mouse wheel) did not respond when used to scroll in any on-screen area with a scroll bar. (Bug #29035906, Bug #93541) * Some keyboard shortcuts, such as Command-C, did not work within the SQL and model editors on macOS 10.14 hosts. (Bug #29034285, Bug #93186) * Rather than generating a warning or error when it detected an unknown SSH option in the ~/.ssh/config file, MySQL Workbench became unresponsive. (Bug #29016708, Bug#92972) * The column-statistics option (Advanced Options) was selected by default in the Administration - Data Export tab, which prevented the successful export of databases from the 5.6 and 5.7 servers. (Bug #28918423, Bug #92928) * The SQL editor and the Alter Table operation both reported errors on indexes with valid functional key parts and on expressions that were used as default values. (Bug #28832740, Bug #92908, Bug #28831069, Bug#92900) * The actions selected from the history-palette context menu did not produce any results. (Bug #28721233) * The code auto-completion feature in the query editor did not provide the expected behavior. (Bug #28443700, Bug#91859) * The Close Other Tabs action closed all tabs in the SQL editor when it was selected from the context menu of the New table - table tab. (Bug #28257404) * MySQL Workbench stopped working on Linux hosts after a long period of use that included adding new tables to an existing model. (Bug #28257141) * With a set of objects selected to import from the dump project folder, only the first object of the set was shown in the Schema Objects list, instead of all selected objects. In addition, the first object was repeated multiple times in the list. (Bug #28222744) * MySQL Workbench was unable to start a session to the server on MacOS hosts until a successful login was performed at the command line first. (Bug #28165625) * Some keyboard shortcuts were unsuccessful when used properly. (Bug #28108104, Bug #91090) * A valid query using an appropriate server version for window functions displayed a syntax error at the opening parenthesis of the first OVER clause in the query editor. (Bug #27922827, Bug #90620) * The template that was generated for a table of a model did not include type values within the Datatype column. (Bug #27025456) * Items listed within the Schemas tab were not visible when selected on Linux. (Bug #26579157, Bug #87321) * The test-connection action in older versions caused MySQL Workbench to stop working when it was used to test standard TCP/IP over SSH connections during the initial setup. (Bug #21144432) * A warning was generated during attempts to migrate source tables from Microsoft SQL Server with a valid ODBC driver if a column name included unrecognized characters. The reverse engineering operation reported that an impacted table had no column attributes, and the migration stopped with errors later in the process. (Bug #18109616, Bug#71336) * The operation to check for MySQL Workbench updates (from Help) returned an error when used behind a proxy server with authentication. (Bug #13864621, Bug #64308) On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy
MySQL Connector/Python 8.0.16 has been released
an unexpected halt when fetching fields. (Bug #28479054) * Querying an empty LONG BLOB raised an IndexError exception. (Bug #27897881, Bug #90519) Enjoy and thanks for the support! On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy
MySQL Shell 8.0.15 for MySQL Server 8.0 and 5.7 has been released
Dear MySQL users, MySQL Shell 8.0.15 is a maintenance release of MySQL Shell 8.0 Series (a component of the MySQL Server). The MySQL Shell is provided under Oracle's dual-license. MySQL Shell 8.0 is highly recommended for use with MySQL Server 8.0 and 5.7. Please upgrade to MySQL Shell 8.0.15. MySQL Shell is an interactive JavaScript, Python and SQL console interface, supporting development and administration for the MySQL Server. It provides APIs implemented in JavaScript and Python that enable you to work with MySQL InnoDB cluster and use MySQL as a document store. The AdminAPI enables you to work with MySQL InnoDB cluster, providing an integrated solution for high availability and scalability using InnoDB based MySQL databases, without requiring advanced MySQL expertise. For more information about how to configure and work with MySQL InnoDB cluster see https://dev.mysql.com/doc/refman/en/mysql-innodb-cluster-userguide.html The X DevAPI enables you to create "schema-less" JSON document collections and perform Create, Update, Read, Delete (CRUD) operations on those collections from your favorite scripting language. For more information about how to use MySQL Shell and the MySQL Document Store support see https://dev.mysql.com/doc/refman/en/document-store.html For more information about the X DevAPI see https://dev.mysql.com/doc/x-devapi-userguide/en/ If you want to write applications that use the the CRUD based X DevAPI you can also use the latest MySQL Connectors for your language of choice. For more information about Connectors see https://dev.mysql.com/doc/index-connectors.html. For more information on the APIs provided with MySQL Shell see https://dev.mysql.com/doc/dev/mysqlsh-api-javascript/8.0/ and https://dev.mysql.com/doc/dev/mysqlsh-api-python/8.0/ Using MySQL Shell's SQL mode you can communicate with servers using the legacy MySQL protocol. Additionally, MySQL Shell provides partial compatibility with the mysql client by supporting many of the same command line options. For full documentation on MySQL Server, MySQL Shell and related topics, see https://dev.mysql.com/doc/mysql-shell/8.0/en/ For more information about how to download MySQL Shell 8.0.15, see the "Generally Available (GA) Releases" tab at http://dev.mysql.com/downloads/shell/ We welcome and appreciate your feedback and bug reports, see http://bugs.mysql.com/ Enjoy and thanks for the support! Changes in MySQL Shell 8.0.15 (2019-02-01) This release contains no functional changes and is published to align version number with the MySQL Server 8.0.15 release. On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy
MySQL Connector/ODBC 5.3.12 has been released
Dear MySQL users, MySQL Connector/ODBC 5.3.12, a new version of the ODBC driver for the MySQL database management system, has been released. The available downloads include both a Unicode driver and an ANSI driver based on the same modern codebase. Please select the driver type you need based on the type of your application - Unicode or ANSI. Server-side prepared statements are enabled by default. It is suitable for use with any MySQL version from 5.5. This is the sixth release of the MySQL ODBC driver conforming to the ODBC 3.8 specification. It contains implementations of key 3.8 features, including self-identification as a ODBC 3.8 driver, streaming of output parameters (supported for binary types only), and support of the SQL_ATTR_RESET_CONNECTION connection attribute (for the Unicode driver only). The release is now available in source and binary form for a number of platforms from our download pages at http://dev.mysql.com/downloads/connector/odbc/5.3.html For information on installing, please see the documentation at http://dev.mysql.com/doc/connector-odbc/en/connector-odbc-installation.html Changes in MySQL Connector/ODBC 5.3.12 (2019-01-28, General Availability) Functionality Added or Changed * A new ENABLE_LOCAL_INFILE connection option was added to the connection string, DSN, and GUI. Disabled by default, set ENABLE_LOCAL_INFILE=1 to enable LOAD DATA operations. This toggles the MYSQL_OPT_LOCAL_INFILE mysql_options() option. The connection string overrides the DSN value if both are set. Bugs Fixed * Dynamic linking (-DCLIENT_STATIC_LINKING:BOOL=false) was not functioning, and updating to the most recent MySQL Server 5.7 headers restored this functionality. (Bug #28609434, Bug #92319, Bug #91841) * Calling SQLBulkOperations with no_ssps set to 0 and cursortype set to SQL_CURSOR_DYNAMIC would cause an unexpected halt when using the generic Linux binaries. (Bug #28289320) On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy
MySQL Cluster 8.0.13-dmr has been released
being used in parallel from an API node, the block number extracted from a block reference in DBLQH was the same as that of a SUMA block even though the request was coming from an API node. Due to this ambiguity, DBLQH mistook the request from the API node for a request from a SUMA block and failed. This is fixed by checking node IDs before checking block numbers. (Bug #88441, Bug #27130570) * A join entirely within the materialized part of a semi-join was not pushed even if it could have been. In addition, EXPLAIN provided no information about why the join was not pushed. (Bug #88224, Bug #27022925) References: See also: Bug #27067538. * All known compiler warnings raised by -Werror when building the NDB source code have been fixed. (Bug #88136, Bug #26990244) * When the duplicate weedout algorithm was used for evaluating a semi-join, the result had missing rows. (Bug #88117, Bug #26984919) References: See also: Bug #87992, Bug #2692. * NDB did not compile with GCC 7. (Bug #88011, Bug #26933472) * A table used in a loose scan could be used as a child in a pushed join query, leading to possibly incorrect results. (Bug #87992, Bug #2692) * When representing a materialized semi-join in the query plan, the MySQL Optimizer inserted extra QEP_TAB and JOIN_TAB objects to represent access to the materialized subquery result. The join pushdown analyzer did not properly set up its internal data structures for these, leaving them uninitialized instead. This meant that later usage of any item objects referencing the materialized semi-join accessed an initialized tableno column when accessing a 64-bit tableno bitmask, possibly referring to a point beyond its end, leading to an unplanned shutdown of the SQL node. (Bug #87971, Bug #26919289) * In some cases, a SCAN_FRAGCONF signal was received after a SCAN_FRAGREQ with a close flag had already been sent, clearing the timer. When this occurred, the next SCAN_FRAGREF to arrive caused time tracking to fail. Now in such cases, a check for a cleared timer is performed prior to processing the SCAN_FRAGREF message. (Bug #87942, Bug #26908347) * While deleting an element in Dbacc, or moving it during hash table expansion or reduction, the method used (getLastAndRemove()) could return a reference to a removed element on a released page, which could later be referenced from the functions calling it. This was due to a change brought about by the implementation of dynamic index memory in NDB 7.6.2; previously, the page had always belonged to a single Dbacc instance, so accessing it was safe. This was no longer the case following the change; a page released in Dbacc could be placed directly into the global page pool where any other thread could then allocate it. Now we make sure that newly released pages in Dbacc are kept within the current Dbacc instance and not given over directly to the global page pool. In addition, the reference to a released page has been removed; the affected internal method now returns the last element by value, rather than by reference. (Bug #87932, Bug #26906640) References: See also: Bug #87987, Bug #26925595. * When creating a table with a nonexistent conflict detection function, NDB returned an improper error message. (Bug #87628, Bug #26730019) * ndb_top failed to build with the error "HAVE_NCURSESW_H" is not defined. (Bug #87035, Bug #26429281) * In a MySQL Cluster with one MySQL Server configured to write a binary log failure occurred when creating and using an NDB table with non-stored generated columns. The problem arose only when the product was built with debugging support. (Bug #86084, Bug #25957586) * It was possible to create or alter a STORAGE MEMORY table using a nonexistent tablespace without any error resulting. Such an operation now fails with Error 3510 ER_TABLESPACE_MISSING_WITH_NAME, as intended. (Bug #82116, Bug #23744378) * ndb_restore --print_data --hex did not print trailing 0s of LONGVARBINARY values. (Bug #65560, Bug #14198580) * When the internal function ha_ndbcluster::copy_fk_for_offline_alter() checked dependent objects on a table from which it was supposed to drop a foreign key, it did not perform any filtering for foreign keys, making it possible for it to attempt retrieval of an index or trigger instead, leading to a spurious Error 723 (No such table). On Behalf of Oracle/MySQL Release Engineering Team, Balasubramani
MySQL Connector/C++ 8.0.13 has been released
e legacy JDBC connector could encounter a read access violation at exit time due to nondeterministic global destruction order. (Bug #28525266, Bug #91820) * Configuring with -DCMAKE_BUILD_TYPE=Release did not work on Linux. (Bug #28045274) * Field references in .having() expressions could be interpreted incorrectly and produce errors. (Bug #26310713) Enjoy and thanks for the support! On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/mysql
MySQL Workbench 8.0.12 has been released
Like operation (right-click Tables within the schema tree) was not complete enough to use without custom modifications. (Bug #20578595) * The wb.log file did not rotate to a new file (for example, wb.log to wb.1.log) as expected on startup. In addition, all queries were written to the sql_actions_unconnected.log file, instead of to an individual log file for each connection. (Bug #20356293, Bug #75496) * The Zoom + icon in the spatial view toolbar produced deteriorating resolution as an image was enlarged. For better results, use the Zoom to area icon to recompute a portion of the whole shape, instead of simply magnifying the visible area with the Zoom + tool. (Bug #20279644, Bug #75318) * A newly created SSH connection could not be used to synchronize a model with a MySQL database. (Bug #20144296, Bug #75102) * Expired root passwords were not supported by MySQL Workbench and could not be changed during the first attempt to make a connection to the server where the password was expired. (Bug #19654005) * Keywords in stored procedures and triggers were not highlighted consistently within the SQL editor and code blocks with keywords did not expand or collapse as expected. (Bug #1992, Bug #72677) * Selecting Server and then Backup Recovery from the menu generated an unhandled exception when the server was stopped. (Bug #18492268) * Returned rows of a column in the result grid did not reliably sort by ascending and descending order when the column label was clicked. (Bug #18454325) * The Delete key did not function within EER diagrams. (Bug #18445600) * With both a MySQL model and EER diagram open, pressing the CTRL+W keyboard shortcut twice closed the diagram, but not the model file. (Bug #18445598) * On Linux platforms before the home screen was redesigned, attempting to drag and drop a connection from within a group caused the group to move instead of the connection. (Bug #18445563) * When editing an EER diagram, the icons within the editor overlapped on Linux platforms. (Bug #18426867) * Schema transfer and migration operations did not support SSH connections and produced error messages when the operations were attempted. (Bug #18138798, Bug #71295) * The Use defaults from global settings model option (Model, Model Options from the menu in the MySQL Model tab) when selected did not override the target MySQL version (set in Model Options) with the default target version (set in Workbench Preferences). (Bug #18130160, Bug #71429) * Attempting to edit a corrupted MySQL model (.mwb) file resulted in an unpredicted shutdown. (Bug #17456147, Bug #70334) * The Save and Save As dialog boxes did not show the file type of a model or SQL script. (Bug #17300401) * On macOS platforms, the database-migration operation returned various error messages when an attempt was made to migrate valid data into MySQL. (Bug #17299915, Bug #17299925, Bug #17408230) * Selecting multiple objects (tables, views, and so on) in a model, and then deleting all of them at once, removed only the first object from the model. (Bug #14821928, Bug #67214) * When an output message in the Action Area panel consisted of multiple lines, only the first line was visible. This fix provides an information box that appears briefly when a pointer device hovers over the truncated message. (Bug #14802567, Bug #66988) * The Workbench Scripting Shell window on hosts running the GNOME Shell lacked the controls to resize or close the window. (Bug #14768677, Bug #66810) * The context menus associated with tables in the schema tree did not function when the schema list was filtered. (Bug #14690217, Bug #67001) * The combination of Ubuntu with language-pack-tr and LANG=tr_TR.UTF-8 produced an error message when columns of type INT were parsed during operations that altered existing tables. (Bug #13971992, Bug #63872) * Chinese characters in the file path of an existing MySQL model were misrepresented and rendered the file inaccessible. (Bug #11757843, Bug #49950) * EER diagrams with long names wrapped around to a second line in the Model Overview area and were not fully visible when the host was Microsoft Windows. This fix inserts a vertical scroll bar into the Model Overview to accommodate long names. (Bug #11749931, Bug #40103) On Behalf of Oracle/MySQL Release Engineering Team, Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/m
MySQL Connector/C++ 8.0.12 has been released
plications, lock mode methods can be called without this parameter, as before; this is equivalent to passing a lock mode of DEFAULT. * Connector/C++ now supports the SHA256_MEMORY authentication mechanism for connections using the X Protocol. For X DevAPI applications, SessionOption::AUTH supports the new value AuthMethod::SHA256_MEMORY. For X DevAPI for C applications, the session option MYSQLX_OPT_AUTH supports the new value MYSQLX_AUTH_SHA256_MEMORY. These new values request using the sha256_memory authentication mechanism when creating a session. * For compliance with the Core DevAPI, these Connector/C++ changes were made: + getAffectedItemsCount() was moved from Result to Result_common. + Collection.modify(condition).arrayDelete() was removed. + getAffectedRowsCount() was removed. Use getAffectedItemsCount() instead. + getWarningCount() was renamed to getWarningsCount(). Bugs Fixed * utf8mb4 character data was handled incorrectly. (Bug #28240202) * Session creation had a memory leak. (Bug #27917942) * When configuring to build Connector/C++ with the legacy connector, CMake did not account for the MYSQL_CONFIG_EXECUTABLE option. (Bug #27874173, Bug #90389) * Improper error handling for unknown hosts when creating a session could result in unexpected application exit. (Bug #27868302) * The mysqlx_row_fetch_one() X DevAPI for C function could fail to return for large result set exceeding the maximum packet size. Now such result sets produce an error. (Bug #27732224) Enjoy and thanks for the support! On Behalf of Oracle/MySQL Release Engineering Team,Balasubramanian Kandasamy
MySQL Enterprise Backup 8.0.11 has been released
e restores of a full and an incremental backups, or of two incremental backups. (Bug #27530916) * mysqlbackup failed to backup to an Amazon S3 cloud storage. (Bug #27231229) * An apply-incremental-backup operation corrupted the non-InnoDB files in its target backup when the sizes of those files are smaller in the incremental backup than in the target backup. (Bug #27001934) * mysqlbackup could not establish a connection to the server with a Unix socket using the option --protocol=SOCKET. (Bug #26977679) * A number of memory leaks were observed when running mysqlbackup. They have now been fixed. (Bug #26495834, Bug #26373259, Bug #26093563, Bug #26423820, Bug #26497245) * After applying an incremental backup created with the --incremental-with-redo-log-only option to a full backup, the full backup's binary log became corrupted. (Bug #26403452) * On macOS, mysqlbackup failed to determine the relay log file name correctly and thus could not back up the relay log for a slave server. (Bug #25574605) * mysqlbackup only accepts values for --ssl-mode in upper case. With this fix, the option's value has become case insensitive. (Bug #25548088) * In a Group Replication (http://dev.mysql.com/doc/refman/8.0/en/group-replication.html) setting for MySQL servers, when changes were made to one group member and a backup was taken on another, the relay log for the replication applier was missing from the backup, so that the restored server could not be started. (Bug #25534078) * mysqlbackup could not restore the auto increment values in tables and the corruptions flags for indexes onto a server. The tasks are now made possible by having mysqlbackup copying onto the restored sever blocks of redo logs that cover the during from the latest checkpoint to the time of backup, so that the server can, after restart, restore the incremental values and the corruption flags using those blocks. On Behalf of Oracle/MySQL Release Engineering Team Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/mysql
MySQL Community Server 8.0.11 has been released (part 2/2)
ery is no longer optimized if outer query is known to produce an empty result; in such cases, EXPLAIN now shows Not optimized, outer query is empty. This change is made because, when the table used by the outer query is found empty at optimization, this sets the join column to NULL even when defined as not nullable, which leads to a conflict when optimizing the subquery. An exception is made if the outer query has aggregates without any GROUP BY; this means that it has a non-empty result, and that any subquery in the SELECT list must be evaluated and optimized, which reopens the nullability issue, which is now handled correctly for such cases. (Bug #83115, Bug #24713879) References: See also: Bug #83216, Bug #24760317. * When selecting from all columns making up a unique key containing nullable columns, with all columns in the WHERE condition set to non-null values, MySQL did not take into account their uniqueness, with the result that only_full_group_by missed detecting a functionally dependent column. (Bug #79291, Bug #22279903) * When using a partial index, the optimizer performed a more expensive table lookup instead of using the index, even when the partial index covered the entire set of data needed. (Bug #74359, Bug #19806106) On Behalf of Oracle/MySQL Release Engineering Team Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/mysql
MySQL Community Server 8.0.11 has been released (part 1/2)
[Due to size limitations, the announcement is split in 2 parts. This is part 1.] Dear MySQL users, MySQL Server 8.0.11 (GA) is a new version of the world's most popular open source database. This is the first official release of MySQL 8.0. The new features in this release are now deemed to be of Release quality. Note that 8.0.11 includes all features in MySQL 5.7 and previous 8.0 Development Milestone Releases. An overview of what's new in MySQL 8.0 is available online at https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html For information on installing MySQL 8.0.11 on new servers, please see the MySQL installation documentation at http://dev.mysql.com/doc/refman/8.0/en/installing.html MySQL Server 8.0.11 is available in source and binary form for a number of platforms from our download pages at http://dev.mysql.com/downloads/mysql/ MySQL Server 8.0.11 is also available from our repository for Linux platforms, go here for details: http://dev.mysql.com/downloads/repo/ Windows packages are available via the Installer for Windows or .ZIP (no-install) packages for more advanced needs. The point and click configuration wizards and all MySQL products are available in the unified Installer for Windows: http://dev.mysql.com/downloads/installer/ 8.0.11 also comes with a web installer as an alternative to the full installer. The web installer doesn't come bundled with any actual products and instead relies on download-on-demand to fetch only the products you choose to install. This makes the initial download much smaller but increases install time as the individual products will need to be downloaded. We welcome and appreciate your feedback, bug reports, bug fixes, patches, etc.: http://bugs.mysql.com/report.php The following link lists the changes in the MySQL 8.0 since the the release of MySQL 8.0.4. https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-11.html Enjoy! Changes in MySQL 8.0.11 (2018-04-19, General Availability) Note Upgrade from MySQL 5.7 to MySQL 8.0 is only supported using the in-place upgrade method. Downgrade from MySQL 8.0 to MySQL 5.7 (or from a MySQL 8.0 release to a previous MySQL 8.0 release) is not supported. The only supported alternative is to restore a backup taken before upgrading. * Character Set Support * Compilation Notes * Configuration Notes * Deprecation and Removal Notes * INFORMATION_SCHEMA Notes * Installation Notes * Logging Notes * Packaging Notes * Performance Schema Notes * Security Notes * Spatial Data Support * sys Schema Notes * Test Suite Notes * X Plugin Notes * Functionality Added or Changed * Bugs Fixed Character Set Support * The utf8mb3 character set will be replaced by utf8mb4 in some future MySQL version. The utf8 character set is currently an alias for utf8mb3, but will at that point become a reference to utf8mb4. To avoid ambiguity about the meaning of utf8, consider specifying utf8mb4 explicitly for character set references instead of utf8. Compilation Notes * MySQL source code has been converted to Google style rules using clang-format. (Bug #27414321) * Sun RPC is being removed from glibc. CMake now detects and uses libtirpc if glibc does not contain Sun RPC. (You might find it necessary to install libtirpc and rpcgen to take advantage of this CMake feature.) (Bug #27368272, Bug #89168) * The minimum version of the Boost library for server builds is now 1.66.0. (Bug #27137349, Bug #88540) * When building from source, the provided CMake script assumed that JUnit and Ant were installed and available at set paths. If this was not the case, building the GCS Java wrapper resulted in build errors. To address this a new CMake option WITH_ANT=path_name has been added to the build script, and which works in a similar way to the existing WITH_BOOST CMake option. Set WITH_ANT to the path of a directory where the Ant tarball, or an already unpacked archive, is saved. When WITH_ANT is not set, or is set with the special value system, the build assumes a binary ant exists in $PATH. Similarly, the CMake option ENABLE_DOWNLOADS already exists to download required libraries during a build, such as the Google Test distribution. Now, when ENABLE_DOWNLOADS is set, and JUnit or Ant are not found they are downloaded as part of the build process. (Bug #26678793) Configuration Notes * A new CMake option, BUNDLE_RUNTIME_LIBRARIES, enables bundling of runtime libraries with server MSI and Zip packages for Windows. (Bug #27584796, Bug #89771) * systemd service files now increase LimitNOFILE to 1, to accommodate higher default settings in MySQL 8.0. (Bug #27530282)
MySQL Cluster 7.6.4-dmr has been released
ning that this feature did not behave properly on those platforms. Now the synchronization flag is used on those platforms that do not support O_SYNC. (Bug #76975, Bug #21049554) On Behalf of Oracle/MySQL Release Engineering Team Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/mysql
MySQL Router 8.0.3-dmr has been released
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
MySQL Connector/Java 8.0.8-dmr has been released
was being cached. This was caused by the silent replacement of the cache entry of the old statement by the new. When this happened repeatedly, it caused eventually the complaint that max_prepared_stmt_count was exceeded. This fix makes sure that when a cache entry for a statement replaces an older one, the older statement is immediately closed. (Bug #20066806, Bug #74932) On behalf of Oracle MySQL Release Team Balasubramanian Kandasamy
MySQL Shell 1.0.10 GA has been released
dba.checkInstanceConfiguration() was not detecting that the instance was not correctly configured for InnoDB cluster usage. * If removeInstance() failed due to a connection error, an error was reported but the instance was incorrectly removed from the InnoDB cluster metadata, and remained part of the replication group. The fix ensures the metadata is correctly updated according to the result of removeInstance(). * In a situation where a new primary instance was elected, adding a new instance to the cluster resulted in an error due to a failed connection to the previous primary instance. * The functions that modify server variables, such as dba.createCluster() and dba.validateInstance() now provide more information in interactive mode output and log output about server variables which are changed when executed. * Deploying instances to paths with directories that contained spaces was failing without error. Use double backslash to specify such paths, for example D:\\Cluster\\foo bar. * The Cluster object obtained from functions such as dba.createCluster() or dba.getCluster() became unusable once the Shell session in which the object was created is was connected to a different server. The fix modifies the Cluster object so that: + The Cluster object holds an internal reference to the Session from which it was created or retrieved. + AdminAPI functions that modify the Cluster are made using the session referenced by the object. On Behalf of the MySQL/ORACLE RE Team Balasubramanian Kandasamy
MySQL Connector/Python 8.0.4-dmr has been released
Dear MySQL users, MySQL Connector/Python 8.0.4 dmr is the fifth development release of the MySQL Connector Python 8.0 series. This series adds support for the new X DevAPI. The X DevAPI enables application developers to write code that combines the strengths of the relational and document models using a modern, NoSQL-like syntax that does not assume previous experience writing traditional SQL. To learn more about how to write applications using the X DevAPI, see http://dev.mysql.com/doc/x-devapi-userguide/en/. For more information about how the X DevAPI is implemented in MySQL Connector/Python, and its usage, see http://dev.mysql.com/doc/dev/connector-python. Please note that the X DevAPI requires MySQL Server version 5.7.12 or higher with the X Plugin enabled. For general documentation about how to get started using MySQL as a document store, see http://dev.mysql.com/doc/refman/5.7/en/document-store.html. To download MySQL Connector/Python 8.0.4 dmr, see the "Development Releases" tab at http://dev.mysql.com/downloads/connector/python/ Enjoy! Changes in MySQL Connector/Python 8.0.4 (2017-07-17, 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. For example, MySQL Connector/Python 8.0.12 would be designed to support all features of MySQL server version 8 (or lower). This change makes it easy and intuitive to decide which client version to use for which server version. Connector/Python 8.0.4 is the first release to use the new numbering. It is the successor to Connector/Python 2.2.3. Character Set Support * Connector/Python now supports MySQL servers configured to use utf8mb4 as the default character set. Functionality Added or Changed * To avoid unintentional changes to all items in a collection, the Collection.modify() and Collection.remove() methods now require a nonempty selection expression as argument. To intentionally apply an operation to an entire collection, pass a condition that always evaluates to true, such as True. A similar change was made to Table.update() and Table.delete(). (Bug #25991574) * For MSI and Solaris packages, the pure Python Protobuf support implementation was replaced by a C++ extension. This enables Connector/Python to support Python 2 and 3 as well Protobuf 2 and 3. * The NodeSession class has been renamed to Session, and the XSession class has been removed. * Connections created using Session objects now are secure by default. Also, the ssl-enabled connection option has been replaced by ssl-mode. Permitted ssl-mode values are disabled, required (the default), verify_ca and verify_identity. * The format of document ID values generated when adding documents to a collection has changed. It is still a string of 32 hexadecimal digits based on UUID, but the order of digits was changed to match the requirement of a stable ID prefix. Bugs Fixed * The C Extension was not installed by some Connector/Python installers, such as Solaris .pkg and macOS .dmg installer packages. (Bug #24422244) * Collection.drop_index("name") incorrectly returned an instance of DropCollectionIndexStatement. Documentation Online:http://dev.mysql.com/doc/connector-python/en/index.html The source distribution includes the manual in various formats under the docs/ folder. Reporting Bugs We welcome and appreciate your feedback and bug reports: http://bugs.mysql.com/ On Behalf of the MySQL/Oracle Release Engineering Team, Balasubramanian Kandasamy
MySQL Shell 8.0.0-dmr has been released
e previous limitation of using Unix sockets to connect to InnoDB cluster instances. See MySQL Shell Connections (http://dev.mysql.com/doc/refman/8.0/en/mysql-shell-connections.html) for information on how the defaults are applied to socket connections. (Bug #24848763, Bug #26036466) References: See also: Bug #24911068. * Some issues with the MySQL Shell command line help output were fixed. (Bug #24841749, Bug #24841493, Bug #24910540) * URIs were incorrectly parsed in MySQL Shell when passwords were hidden. (Bug #24793956) * mysqlsh stopped responding if the \source command was given a directory (rather than file) argument. (Bug #23097932, Bug #81060) * On an instance configured as a multi-threaded slave, in other words slave_parallel_workers set to greater than 0, and with slave_parallel_type=DATABASE, dba.checkInstanceConfiguration() was not detecting that the instance was not correctly configured for InnoDB cluster usage. * If removeInstance() failed due to a connection error, an error was reported but the instance was incorrectly removed from the InnoDB cluster metadata, and remained part of the replication group. The fix ensures the metadata is correctly updated according to the result of removeInstance(). * In a situation where a new primary instance was elected, adding a new instance to the cluster resulted in an error due to a failed connection to the previous primary instance. * The functions that modify server variables, such as dba.createCluster() and dba.validateInstance() now provide more information in interactive mode output and log output about server variables which are changed when executed. * Deploying instances to paths with directories that contained spaces was failing without error. Use double backslash to specify such paths, for example D:\\Cluster\\foo bar. * The Cluster object obtained from functions such as dba.createCluster() or dba.getCluster() became unusable once the Shell session in which the object was created is was connected to a different server. The fix modifies the Cluster object so that: + The Cluster object holds an internal reference to the Session from which it was created or retrieved. + AdminAPI functions that modify the Cluster are made using the session referenced by the object. On Behalf of the MySQL/ORACLE RE Team Balasubramanian Kandasamy
MySQL Connector/C++ 1.1.9 has been released
Dear MySQL Users, A new GA (general availability) version of MySQL Connector/C++ has been made available: MySQL Connector/C++ 1.1.9 GA. The MySQL Connector/C++ provides a C++ API for connecting client applications to the MySQL Server 5.5 or newer. You can download the production release at: http://dev.mysql.com/downloads/connector/cpp/1.1.html MySQL Connector C++ (Commercial) will be available for download on the My Oracle Support (MOS) website. This release will be available on eDelivery (OSDC) in next month's upload cycle. The MySQL driver for C++ offers an easy to use API derived from JDBC 4.0. MySQL Workbench has used it successfully for years. We have improved the driver since the last GA release. Please see the documentation and the CHANGES file in the source distribution for a detailed description of bugs that have been fixed. Bug descriptions are also listed below. Enjoy! Changes in MySQL Connector/C++ 1.1.9 (2017-05-16, General Availability) Compilation Notes * The Windows version of Connector/C++ Community is now built using the dynamic C++ runtime library (that is, with the /MD compiler option), with the following implications for users: + Target hosts running Windows applications that use Connector/C++ Community now need the Visual C++ Redistributable for Visual Studio 2013 (https://www.microsoft.com/en-us/download/details.aspx?id=40784) installed on them. + Client applications on Windows that use Connector/C++ Community should be compiled with the /MD compiler option. Security Notes * The linked OpenSSL library for Connector/C++ 1.1.9 Commercial has been updated to version 1.0.2k. For a description of issues fixed in this version, see http://www.openssl.org/news/vulnerabilities.html. This change does not affect the Oracle-produced MySQL Community build of Connector/C++, which uses the yaSSL library instead. Bugs Fixed * Values returned by getDouble() from DOUBLE table columns were truncated (decimal part missing) if the locale was set to fr_CA, which uses comma as the decimal separator. (Bug #17227390, Bug #69719) * Connections to localhost failed if the local server was bound only to its IPv6 interface. (Bug #17050354, Bug #69663) On Behalf of the MySQL/ORACLE RE Team Balasubramanian Kandasamy
MySQL Router 2.1.3 GA has been released
Dear MySQL users, MySQL Router 2.1.3 GA is the first GA release for MySQL Router 2.1. 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. MySQL Router 2.1 also introduces the following additions: * Automatic setup/bootstrap with a MySQL InnoDB cluster * Support for the new X protocol * Support for deployments inside self-contained directories * Easy and secure password management using a built-in keyring You can download MySQL Router fromhttp://dev.mysql.com/downloads/router. Package binaries are available for several platforms and also as a source code download. If you are a commercial customer, MySQL Router is available via the MySQL Oracle Support (MOS) website. Packages will be available on eDelivery at the next monthly refresh. Documentation for MySQL Router can be found at http://dev.mysql.com/doc/mysql-router/en Enjoy! Changes in MySQL Router 2.1.3 (2017-04-12, General Availability) A known limitation of this release: Note The --bootstrap command line option does not accept IPv6 addresses. * Functionality Added or Changed * Bugs Fixed Functionality Added or Changed * Added functionality to also scan for Router configuration files with the .ini extension, to provide backward compatibility with previous Router installations. Router looks in the initial directory for the .conf version, then checks for a .ini version, and then repeats the process in the second directory that's typically the user's home directory. (Bug #25688333) Bugs Fixed * On Linux, systemd based distributions defaulted to mysqlrouter.ini instead of mysqlrouter.conf. (Bug #25688333) * Bootstrapping as a super user (uid==0) without the --user option would generate files and directories that were owned by root an not accessible by others. Now, super users are required to pass in the --user option. Also while not recommended, the super user name can be passed in to force using the super user, such as --user=root. (Bug #25682736) * Router would compile against yaSSL but not OpenSSL. (Bug #25672823, Bug #85068) * On Solaris, MySQL Router would not start as it could not find the required logger.so. (Bug #25638708) * On FreeBSD, a unit-test would always fail with "Bad Suki". (Bug #25549490) On behalf of Oracle MySQL Release Team Balasubramanian Kandasamy
MySQL Router 2.1.2 RC has been released
Dear MySQL users, MySQL Router 2.1.2 RC is a release candidate for MySQL Router 2.1. 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. MySQL Router 2.1 also introduces the following additions: * Automatic setup/bootstrap with a MySQL InnoDB cluster * Support for the new X protocol * Support for deployments inside self-contained directories * Easy and secure password management using a built-in keyring You can download MySQL Router from 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 2.1.2 (2017-03-06, Release Candidate) * Functionality Added or Changed * Bugs Fixed Functionality Added or Changed * Windows: downloads now require Visual C++ Redistributable for Visual Studio 2015, when before the 2013 version was required. * MySQL Fabric support was removed. * mysqlrouter --help output was improved to include the current default folder locations for the system, and also usage examples. * X Protocol support was added. The new protocol configuration option was added to support the X Protocol. Setting protocol to x enables the X Protocol for connections, otherwise the default classic protocol is used. * New SSL command line options: --ssl-mode, --ssl-ca, --ssl-capath, --ssl-cipher, --ssl-crl, --ssl-crlpath, and --tls-version. * Keyring key management was added to securely manage passwords. With this, the new master_key_path and keyring_path configuration options were added. * Bootstrapping support was added. New bootstrapping command line options: --bootstrap, --conf-base-port, --conf-bind-address, --conf-use-sockets, --conf-skip-tcp, --directory, --force, and --name Bugs Fixed * While bootstrapping router, the process to discover local interfaces had a memory leak. (Bug #25456674) * Fixed "use of uninitialized bytes" issues as discovered by valgrind. (Bug #25455825) * After bootstrapping router with the --conf-use-sockets and --directory options, the socket path configuration value defined in the generated configuration file was invalid. This was because it used the socketsdir value in the socket path, but the directory was not created as part of the bootstrap process or when router was started. (Bug #25391460) * On Windows, immediately starting a bootstrapped Router installation would fail to load the generated configuration file. In addition, the generated text for missing configuration files was improved to also include the paths that were checked. (Bug #25343904) On behalf of Oracle MySQL Release Team Balasubramanian Kandasamy -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/mysql
MySQL Router 2.1.2 RC has been released
Dear MySQL users, MySQL Router 2.1.2 RC is a release candidate for MySQL Router 2.1. 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. MySQL Router 2.1 also introduces the following additions: * Automatic setup/bootstrap with a MySQL InnoDB cluster * Support for the new X protocol * Support for deployments inside self-contained directories * Easy and secure password management using a built-in keyring You can download MySQL Router from 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 2.1.2 (2017-03-06, Release Candidate) * Functionality Added or Changed * Bugs Fixed Functionality Added or Changed * Windows: downloads now require Visual C++ Redistributable for Visual Studio 2015, when before the 2013 version was required. * MySQL Fabric support was removed. * mysqlrouter --help output was improved to include the current default folder locations for the system, and also usage examples. * X Protocol support was added. The new protocol configuration option was added to support the X Protocol. Setting protocol to x enables the X Protocol for connections, otherwise the default classic protocol is used. * New SSL command line options: --ssl-mode, --ssl-ca, --ssl-capath, --ssl-cipher, --ssl-crl, --ssl-crlpath, and --tls-version. * Keyring key management was added to securely manage passwords. With this, the new master_key_path and keyring_path configuration options were added. * Bootstrapping support was added. New bootstrapping command line options: --bootstrap, --conf-base-port, --conf-bind-address, --conf-use-sockets, --conf-skip-tcp, --directory, --force, and --name Bugs Fixed * While bootstrapping router, the process to discover local interfaces had a memory leak. (Bug #25456674) * Fixed "use of uninitialized bytes" issues as discovered by valgrind. (Bug #25455825) * After bootstrapping router with the --conf-use-sockets and --directory options, the socket path configuration value defined in the generated configuration file was invalid. This was because it used the socketsdir value in the socket path, but the directory was not created as part of the bootstrap process or when router was started. (Bug #25391460) * On Windows, immediately starting a bootstrapped Router installation would fail to load the generated configuration file. In addition, the generated text for missing configuration files was improved to also include the paths that were checked. (Bug #25343904) On behalf of Oracle MySQL Release Team Balasubramanian Kandasamy