Dear MySQL Users,

MySQL Connector/J 5.1.42, a maintenance release of the production 5.1
branch has been released. Connector/J is the Type-IV pure-Java JDBC
driver for MySQL.

MySQL Connector Java is available in source and binary form from the
Connector/J download pages at
and mirror sites as well as Maven-2 repositories.

MySQL Connector Java (Commercial) is already available for download on the
My Oracle Support (MOS) website. This release will be available on eDelivery
(OSDC) in next month's upload cycle.

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.

MySQL Connector/J 5.1.42 includes the following general bug fixes and
improvements, also available in more detail on

Changes in MySQL Connector/J 5.1.42 (2017-04-28)

   Version 5.1.42 is a maintenance release of the production 5.1
   branch. 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

     * A null value can now be extracted from a result set to a
       class belonging to the java.time package. Before, such an
       extraction resulted in a NullPointerException being
       thrown. Thanks to Martin Desharnais for contributing the
       code. (Bug #25250938, Bug #84189)

     * Connector/J now checks that a MySQL server's SSL
       certificate and the Certificate Authority (CA) that
       issued it are not expired before establishing an SSL
       connection with the server, even if the connection
       property verifyServerCertificate is set to false. (Bug

     * Name-value pairs contained in the connection property
       sessionVariables can now be separated by either commas or
       a semicolons. (Bug #17757070)

   Bugs Fixed

     * An invalid timezone identifier was used in of the Connector/J
       testsuite. (Bug #25687718, Bug #85351)

     * A mysql client failed to establish an SSL connection to
       the server using the SSL certificates provided in the
       Connector/J source package. It was because the
       certificates have been generated with the same Common
       Name. This fix corrects the Common Names and regenerates
       the SSL certificates. (Bug #25636947)

     * The unit test testsuite.simple.ResultSetTest.testPadding
       failed with the error Unknown character set: 'gb18030'
       after the collation map updates in release 5.1.40. (Bug

     * In a multi-host connection, query timeouts did not occur
       as configured. It was because the CancelTask thread, when
       trying to access the top level, virtual connection
       object, ran into a race condition with the connection
       monitor and then hung. With this fix, the CancelTask
       thread is passed a direct reference to the underlying
       physical connection, with which it can execute the
       cancellation. (Bug #25490163, Bug #84783)

     * CallableStatement.extractProcedureName() did not return
       the correct result when the procedure name contained a
       dash. This was due to an error in the stripComments()
       method of the StringUtils class, which has now been
       corrected. (Bug #25321524, Bug #84324)

     * The ConnectionImpl.isReadOnly() method returned a
       confusing error message when it could not retrieve the
       read-only status of the server. The message has now been
       changed to "Could not retrieve transaction read-only
       status from server." (Bug #25101890, Bug #83834)

     * A NullPointerException was thrown when a null boolean
       value was being read from the database. (Bug #25048406,
       Bug #83662)

     * After a BIT value had been retrieved from a result set,
       the wasNull() method of the result set returned value for
       the last wasNull() query instead of the value for the
       last retrieved column. (Bug #24841670, Bug #83368)

     * Using a partially-quoted identifier (with only the
       database or the procedure name quoted) or a non-existent
       parameter to register an output parameter in a
       CallableStatement caused a NullPointerException. With
       this fix, a partially-quoted identifier is accepted, and
       a non-existent parameter causes a SQLError to be thrown.
       (Bug #22333996, Bug #79561)

     * DatabaseMetaData.getProcedureColumns() and
       DatabaseMetaData.getFunctionColumns() did not return
       expected results. This was due to the errors with the
       matching algorithm for the column names, which have now
       been fixed. Notice that, however, the effects of the
       connection parameter getProceduresReturnsFunctions on the
       two methods when JDBC 4 is used remain unchanged. (Bug
       #19531384, Bug #73775)

     * When an UpdatableResultSet was used, trying to close the
       result set and its prepared statement simultaneously by
       different threads might result in a deadlock. This fix
       updates the synchronization mechanism for
       UpdatableResultSet to avoid the issue. (Bug #17653733,
       Bug #70704)

     * After a connection had already switched catalog with
       setCatalog(), cached data from the old catalog was
       returned for a reused server-side prepared statement.
       With this fix, the cache of a server-side prepared
       statement cache now includes the catalog in its key to
       avoid wrong cache hits when the statement is reused on
       another catalog. (Bug #16714868, Bug #66430)

On Behalf of MySQL/ORACLE RE Team
Gipson Pulla

MySQL General Mailing List
For list archives:
To unsubscribe:

Reply via email to