MySQL Connector/J Release Notes  /  Changes in MySQL Connector/J 3.1  /  Changes in MySQL Connector/J 3.1.13 (2006-05-26)

Changes in MySQL Connector/J 3.1.13 (2006-05-26)

Bugs Fixed

  • Fixed PreparedStatement.setObject(int, Object, int) doesn't respect scale of BigDecimals. (Bug #19615)

  • Fixed ResultSet.wasNull() returns incorrect value when extracting native string from server-side prepared statement generated result set. (Bug #19282)

  • Fixed invalid classname returned for ResultSetMetaData.getColumnClassName() for BIGINT type. (Bug #19282)

  • Fixed case where driver wasn't reading server status correctly when fetching server-side prepared statement rows, which in some cases could cause warning counts to be off, or multiple result sets to not be read off the wire. (Bug #19282)

  • Fixed data truncation and getWarnings() only returns last warning in set. (Bug #18740)

  • Fixed aliased column names where length of name > 251 are corrupted. (Bug #18554)

  • Improved performance of retrieving BigDecimal, Time, Timestamp and Date values from server-side prepared statements by creating fewer short-lived instances of Strings when the native type is not an exact match for the requested type. (Bug #18496)

  • Added performance feature, re-writing of batched executes for Statement.executeBatch() (for all DML statements) and PreparedStatement.executeBatch() (for INSERTs with VALUE clauses only). Enable by using "rewriteBatchedStatements=true" in your JDBC URL. (Bug #18041)

  • Fixed issue where server-side prepared statements don't cause truncation exceptions to be thrown when truncation happens. (Bug #18041)

  • Fixed CallableStatement.registerOutParameter() not working when some parameters pre-populated. Still waiting for feedback from JDBC experts group to determine what correct parameter count from getMetaData() should be, however. (Bug #17898)

  • Fixed calling clearParameters() on a closed prepared statement causes NPE. (Bug #17587)

  • Map "latin1" on MySQL server to CP1252 for MySQL > 4.1.0. (Bug #17587)

  • Added additional accessor and mutator methods on ConnectionProperties so that DataSource users can use same naming as regular URL properties. (Bug #17587)

  • Fixed ResultSet.wasNull() not always reset correctly for booleans when done using conversion for server-side prepared statements. (Bug #17450)

  • Fixed Statement.getGeneratedKeys() throws NullPointerException when no query has been processed. (Bug #17099)

  • Fixed updatable result set doesn't return AUTO_INCREMENT values for insertRow() when multiple column primary keys are used. (the driver was checking for the existence of single-column primary keys and an autoincrement value > 0 instead of a straightforward isAutoIncrement() check). (Bug #16841)

  • DBMD.getColumns() returns wrong type for BIT. (Bug #15854)

  • lib-nodist directory missing from package breaks out-of-box build. (Bug #15676)

  • Fixed issue with ReplicationConnection incorrectly copying state, doesn't transfer connection context correctly when transitioning between the same read-only states. (Bug #15570)

  • No "dos" character set in MySQL > 4.1.0. (Bug #15544)

  • INOUT parameter does not store IN value. (Bug #15464)

  • PreparedStatement.setObject() serializes BigInteger as object, rather than sending as numeric value (and is thus not complementary to .getObject() on an UNSIGNED LONG type). (Bug #15383)

  • Fixed issue where driver was unable to initialize character set mapping tables. Removed reliance on .properties files to hold this information, as it turns out to be too problematic to code around class loader hierarchies that change depending on how an application is deployed. Moved information back into the CharsetMapping class. (Bug #14938)

  • Exception thrown for new decimal type when using updatable result sets. (Bug #14609)

  • Driver now aware of fix for BIT type metadata that went into MySQL-5.0.21 for server not reporting length consistently . (Bug #13601)

  • Added support for Apache Commons logging, use "com.mysql.jdbc.log.CommonsLogger" as the value for the "logger" configuration property. (Bug #13469)

  • Fixed driver trying to call methods that don't exist on older and newer versions of Log4j. The fix is not trying to auto-detect presence of log4j, too many different incompatible versions out there in the wild to do this reliably.

    If you relied on autodetection before, you will need to add "logger=com.mysql.jdbc.log.Log4JLogger" to your JDBC URL to enable Log4J usage, or alternatively use the new "CommonsLogger" class to take care of this. (Bug #13469)

  • LogFactory now prepends com.mysql.jdbc.log to the log class name if it cannot be found as specified. This enables you to use short names for the built-in log factories, for example, logger=CommonsLogger instead of logger=com.mysql.jdbc.log.CommonsLogger. (Bug #13469)

  • ResultSet.getShort() for UNSIGNED TINYINT returned wrong values. (Bug #11874)

Download these Release Notes
PDF (US Ltr) - 484.4Kb
PDF (A4) - 484.2Kb
EPUB - 127.9Kb