MySQL Connector/J 8.0 Release Notes  /  Changes in MySQL Connector/J 8.0.11 (2018-04-19, General Availability)

Changes in MySQL Connector/J 8.0.11 (2018-04-19, General Availability)

Version 8.0.11 is the first General Availability release of the 8.0 series of MySQL Connector/J. It is suitable for use with MySQL Server versions 8.0, 5.7, 5.6, and 5.5. It supports the Java Database Connectivity (JDBC) 4.2 API, and implements the X DevAPI.

Functionality Added or Changed

  • X DevAPI: The locking options lockShared() and lockExclusive(), available when retrieving data from collection.find() and table.select(), now also accept an optional locking contention value, which is exposed though the enumeration Statement.LockContention. The combinations of lockShared([lockCont]) or lockExclusive([lockCont]) with Statement.LockContention.NOWAIT or Statement.LockContention.SKIP_LOCKED map directly to the SQL statement SELECT ... FOR SHARE or SELECT ... FOR UPDATE with the SQL option NOWAIT or SKIP LOCKED, for the different InnoDB locking read modes.

  • X DevAPI: Connector/J now supports the new server-side document ID generation feature. Client-side document ID generation is no longer supported. As a result, the methods getDocumentId() and getDocumentIds() have been removed and the method getGeneratedIds() has been added to the AddResult and AddResultImpl classes.

  • X DevAPI: The SHA256_MEMORY authentication mechanism is now supported by Connector/J for connections using the X Protocol. See the entry for the connection property xdevapi.auth in Configuration Properties for details.

  • Connector/J now recognizes the data type GEOMCOLLECTION, which has been introduced in MySQL 8.0.11 as an alias and preferred name to the previously known GEOMETRYCOLLECTION data type. (Bug #27678308)

  • The lower bound for the connection property packetDebugBufferSize has been changed to 1, to avoid the connection errors that occur when the value is set to 0. (Bug #26819691)

  • Connector/J now supports the use of a custom SSLSocketFactory for returning a custom-constructed SSL socket at the time of connection establishment. (Bug #26092824, Bug #86278)

  • The source directory and Java package layouts of Connector/J have been revised to make it easier to use custom protocols, APIs, value decoders, and value factories with Connector/J. See the Connector/J source code and the MySQL Connector/J X DevAPI Reference for more details.

Bugs Fixed

  • When an integer value in a JSON document is modified, it becomes a a DOUBLE value to the MySQL server, which is returned with a decimal when fetched from the JSON document. Therefore, calling getInteger() upon the changed value with Connector/J resulted in an NumberFormatException. With this fix, getInteger() parses such a value correctly and returns an integer. (Bug #27226293)

  • In the Ant build file build.xml, com.mysql.cj.api.conf was missing in the list of OSGi exported packages, causing missing dependencies in OSGi bundles that use Connector/J. (Bug #25765250, Bug #85566)

  • Name change of the com.mysql.jdbc.SocketFactory interface to com.mysql.cj.api.io.SocketFactory caused backward incompatibility for older Connector/J applications. The old interface has now been reimplemented to avoid the incompatibility. (Bug #25223137, Bug #84099)