MySQL Connector/J 5.1 Release Notes

2.1 Changes in MySQL Connector/J 5.1.49 (2020-04-29, General Availability)

Version 5.1.49 is a maintenance release of the production 5.1 branch. It is suitable for use with MySQL Server versions 5.6, 5.7, and 8.0. It supports the Java Database Connectivity (JDBC) 4.2 API.

Functionality Added or Changed

  • Default value of the connection property allowLoadLocalInfile has been changed to false. Applications that use the LOAD DATA LOCAL INFILE statement on MySQL Servers need to set this property to true explicitly. (Bug #29261254, Bug #30866178)

  • The allowable versions of TLS protocol used for connecting to the server, when no restrictions have been set using the connection properties enabledTLSProtocols, have been changed to:

    • TLSv1, TLSv1.1, and TLSv1.2 for MySQL Community Servers 8.0, 5.7.28 and later, and 5.6.46 and later, and for commercial versions of MySQL Server 5.6, 5.7, and 8.0.

    • TLSv1 and TLSv1.1 for all other versions of MySQL Servers.

  • The following third-party libraries have been removed from the distribution bundles for Connector/J:

    • C3P0 (required for building Connector/J from source)

    • JBoss common JDBC wrapper (required for building Connector/J from source)

    • Simple Logging Facade API (required for using the logging capabilities provided by the default implementation of org.slf4j.Logger.Slf4JLogger by Connector/J, and for building Connector/J from source)

    Users who need those libraries have to obtain them on their own. See Installing Connector/J from a Binary Distribution and Installing from Source for details.

Bugs Fixed

  • When trying to set a parameter for a PreparedStatement using the method PreparedStatement.setObject(parameterIndex, "false", Types.BOOLEAN), the value was set to true instead of false. (Bug #30911870, Bug #98237)

  • In line with good XML practices, DTD processing has been disabled for Connector/J's MySQL Fabric XML parser. (Bug #30657312)

  • Methods of the ResultSetUtil class that are no longer used in Connector/J 5.1 have been removed. (Bug #30636056)

  • For some prepared statements, calling getMetaData() on them resulted in an Incorrect DATE error, even when no DATE values were involved. This was due to some recent changes on the MySQL Server, to which this patch adjusts Connector/J. (Bug #30151808, Bug #96442)

    References: See also: Bug #29025656, Bug #28940878.

  • When working with a load balancing setup, if the connection property loadBalanceStrategy was set to bestResponseTime and connections to all the hosts in the original setup failed, Connector/J hung, even if there were actually newly-added hosts available. This was because Connector/J mishandled the host whitelist, and this patch corrects the problem. (Bug #23143279)

  • Inserting values in batch using a PreparedStatement failed for an INSERT ...VALUE statement but worked for an INSERT ... VALUES statement, while they are synonymous for MySQL. (Bug #21181501, Bug #77183)