MySQL Blog Archive
For the latest blogs go to
MySQL Connector/Java 6.0.6 m5 has been released

Dear MySQL users,

MySQL Connector/J 6.0.6 m5 Development Release is a developer milestone
release for the 6.0.x series.
This release includes the following new features and changes, also described
in more detail on

As always, we recommend that you check the “CHANGES” file in the download
archive to be aware of changes in behavior that might affect your application.

To download MySQL Connector/J 6.0.6 m5, see the “Development
Releases” tab at


Changes in MySQL Connector/J 6.0.6 (2017-03-10, Milestone 5)

Version 6.0.6 Milestone is the fifth development release of
the 6.0 branch of MySQL Connector/J, providing an insight
into upcoming features. It is suitable for use with MySQL
Server versions 5.5, 5.6, and 5.7. It supports the Java
Database Connectivity (JDBC) 4.2 API.

* Functionality Added or Changed

* Bugs Fixed

Functionality Added or Changed

* X DevAPI: The getPluginVersion() method has been removed
from Connector/J, as it is no longer supported by the X
Protocol. (Bug #25056803)

* IPv6 host addresses are now supported for connections
using the X Protocol.

* X DevAPI: The following new connection options have been
added for SSL/TLS configuration:

+ xdevapi.ssl-enable

+ xdevapi.ssl-truststore

+ xdevapi.ssl-verify-server-certificate
See Configuration Properties

for details.

* Connector/J now supports the new character set collations
implemented in MySQL Server 8.0. See Unicode Character
for details.

* X DevAPI: DDL for views are now supported by the new
methods createView(), dropView(), and alterView().
However, the functions do not support partitioning in an
InnoDB cluster or sharding.

* X DevAPI: The Connector/J X Dev API has been reorganized:

+ All interfaces for public usage have been moved to
the com.mysql.cj.api.xdevapi package, and their
implementation classes to com.mysql.cj.xdevapi.

+ All Connector/J internal interfaces have been moved
to the com.mysql.cj.api.x.core and packages, and their
implementation classes to com.mysql.cj.x.core and

+ Protobuf generated classes have been moved to the
com.mysql.cj.x.protobuf package.

+ The MysqlxSessionFactory has been renamed

Bugs Fixed

* When Connector/J was reading a TIMESTAMP value into an
instance of a JSR-310 data type, the reading was wrong
when the time did not exist in the local time zone of the
JVM due to a time change for Daylight Saving Time. It was
because Connector/J created first a java.sql.Timestamp
instance (which used the JVM’s time zone) for the value
and then converted it to, for example,
java.time.LocalDateTime. With this fix, a JSR-310 object
is created directly to avoid the conversion. (Bug
#24658016, Bug #82964)

* Query executions using prepared statements failed with
the error “Unknown ProtocolEntity class null” when the
connection property useCursorFetch was set to true. (Bug

* When server-side prepared statements were used, updates
to result sets failed in errors. (Bug #24525461)

* The getString() method returned wrong millisecond values
for the TIMESTAMP data type. (Bug #24512766, Bug #82707)

* Updates to a document object of the Dbdoc type failed
when the document contained an array. (Bug #24471057)

* The method isNumberSigned() returned true for columns of
type VARCHAR, which was wrong as it should return false
for any non-numeric columns, according to the JDBC
Specification. The behavior has now been corrected. (Bug

* An IllegalArgumentException was thrown when lenient was
false for a Calendar object and the hours, minutes, and
seconds explicitly set via the Calendar constructor did
not match the values resulted from the timezone
conversion of the Calendar object’s date value. (Bug
#23702040, Bug #82005)

* X DevAPI: The getLastDocumentIds() method only reported
document IDs specified by users, but not those generated
by Connector/J. With this fix, all IDs are now reported.
(Bug #23519211)

* A connection failed with IllegalStateException:
TrustManagerFactoryImpl is not initialized after
Connector/J set (Bug #23510894)

* A NullPointerException was thrown when a NULL object of
any of the classes defined in the java.time package was
retried by the ResultSet.getObject() method. (Bug
#23188159, Bug #81202)

* The getType() method returned errors on columns of YEAR
and DATETIME data types. (Bug #22931277)

On Behalf of MySQL/ORACLE RE Team
Gipson Pulla