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.
Connector/Node.js 8.0.7 is the first release to use the new numbering. It is the successor to Connector/Node.js 1.0.6.
It is no longer permitted to pass an empty search condition, such as the NULL value or an empty string, to the
A number of changes have been implemented for the “
drop” methods are now made available at the same level as the corresponding “create” methods. For example, the
dropTable()methods have been removed from the
XSessionclass (which has now been consolidated into the
Sessionclass) and moved under the
Schemaclass; under the same principle, the
drop()method has been removed from the
drop” methods now succeed even if the objects to be dropped do not exist.
dropView()is now asynchronous and behaves exactly like
dropCollection()by implicitly executing the operation and returning a promise that will hold the result of the drop operation.
A configuration handler interface,
mysqlx.config, has been created for managing persisted session configurations. See MySQL Connector/Node.js with X DevAPI for details.
There are a few changes with regard to encrypted connections to MySQL servers:
Connections are now encrypted by default.
The connection option
ssl-enablehas been replaced by the
ssl-modeoption, which has
VERIFY_CAas its permitted values.
ssl-crloption requires the use of the
ssl-caoption and that
ssl-mode=VERIFY_CA; this is due to an internal requirement of the Node.js core platform.
XSessioninto a single
Sessionclass. The following related changes were also made:
mysqlx.getNodeSession()method is renamed to
getSessionand returns a
DatabaseObject.getSession()now returns a
A new client-side failover feature has been implemented: when creating a new connection, multiple hosts now can be specified in the connection string, and Connector/Node.js tries each host until a successful connection is established or until all hosts have been tried. See Tutorial: Getting Started for details
Connector/Node.js now supports connecting to a local server using Unix sockets. See Tutorial: Getting Started for details.
The format of the document ID value generated when adding a document to a collection has changed. It is still a string of 32 hexadecimal digits based on a UUID, but the order of digits has been changed to match the requirement of a stable ID prefix.
It was not possible to create a new session for a user with a SHA256 password via the PLAIN authentication mechanism. (Bug #26117627)
The handling of large JSON arrays was problematic, and would cause an exception to be thrown. (Bug #26084604)
Attempting to use
bindwhen removing a document from a collection would not succeed, and an exception would be thrown. (Bug #26029551)
Table.update()implementation did not require a SearchConditionStr parameter, and not using this parameter could result in updating all the rows of a given table. A client-side exception is now thrown if the SearchConditionStr parameter is undefined or empty. (Bug #25993174)
Table.delete()implementation did not require a SearchConditionStr parameter, and not using this parameter could result in deleting all the rows of a given table. A client-side exception is now thrown if the SearchConditionStr parameter is undefined or empty. (Bug #25992969)