Bugs fixed:
Process escape tokens in
Connection.prepareStatement(...). You can disable this behavior by setting the JDBC URL configuration propertyprocessEscapeCodesForPrepStmtstofalse. (Bug#15141)Usage advisor complains about unreferenced columns, even though they've been referenced. (Bug#15065)
Driver incorrectly closes streams passed as arguments to
PreparedStatements. Reverts to legacy behavior by setting the JDBC configuration propertyautoClosePStmtStreamstotrue(also included in the 3-0-Compat configuration “bundle”). (Bug#15024)Deadlock while closing server-side prepared statements from multiple threads sharing one connection. (Bug#14972)
Unable to initialize character set mapping tables (due to J2EE classloader differences). (Bug#14938)
Escape processor replaces quote character in quoted string with string delimiter. (Bug#14909)
DatabaseMetaData.getColumns()doesn't returnTABLE_NAMEcorrectly. (Bug#14815)storesMixedCaseIdentifiers()returnsfalse(Bug#14562)storesLowerCaseIdentifiers()returnstrue(Bug#14562)storesMixedCaseQuotedIdentifiers()returnsfalse(Bug#14562)storesMixedCaseQuotedIdentifiers()returnstrue(Bug#14562)If
lower_case_table_names=0(on server):storesLowerCaseIdentifiers()returnsfalsestoresLowerCaseQuotedIdentifiers()returnsfalsestoresMixedCaseIdentifiers()returnstruestoresMixedCaseQuotedIdentifiers()returnstruestoresUpperCaseIdentifiers()returnsfalsestoresUpperCaseQuotedIdentifiers()returnstrue
storesUpperCaseIdentifiers()returnsfalse(Bug#14562)storesUpperCaseQuotedIdentifiers()returnstrue(Bug#14562)If
lower_case_table_names=1(on server):storesLowerCaseIdentifiers()returnstruestoresLowerCaseQuotedIdentifiers()returnstruestoresMixedCaseIdentifiers()returnsfalsestoresMixedCaseQuotedIdentifiers()returnsfalsestoresUpperCaseIdentifiers()returnsfalsestoresUpperCaseQuotedIdentifiers()returnstrue
storesLowerCaseQuotedIdentifiers()returnstrue(Bug#14562)Fixed
DatabaseMetaData.stores*Identifiers():If
lower_case_table_names=0(on server):storesLowerCaseIdentifiers()returnsfalsestoresLowerCaseQuotedIdentifiers()returnsfalsestoresMixedCaseIdentifiers()returnstruestoresMixedCaseQuotedIdentifiers()returnstruestoresUpperCaseIdentifiers()returnsfalsestoresUpperCaseQuotedIdentifiers()returnstrue
If
lower_case_table_names=1(on server):storesLowerCaseIdentifiers()returnstruestoresLowerCaseQuotedIdentifiers()returnstruestoresMixedCaseIdentifiers()returnsfalsestoresMixedCaseQuotedIdentifiers()returnsfalsestoresUpperCaseIdentifiers()returnsfalsestoresUpperCaseQuotedIdentifiers()returnstrue
storesMixedCaseIdentifiers()returnstrue(Bug#14562)storesLowerCaseQuotedIdentifiers()returnsfalse(Bug#14562)Java type conversion may be incorrect for
MEDIUMINT. (Bug#14562)storesLowerCaseIdentifiers()returnsfalse(Bug#14562)Added configuration property
useGmtMillisForDatetimeswhich when set totruecausesResultSet.getDate(),.getTimestamp()to return correct millis-since GMT when.getTime()is called on the return value (currently default isfalsefor legacy behavior). (Bug#14562)Extraneous sleep on
autoReconnect. (Bug#13775)Reconnect during middle of
executeBatch()should not occur ifautoReconnectis enabled. (Bug#13255)maxQuerySizeToLogis not respected. Added logging of bound values forexecute()phase of server-side prepared statements whenprofileSQL=trueas well. (Bug#13048)OpenOffice expects
DBMD.supportsIntegrityEnhancementFacility()to returntrueif foreign keys are supported by the datasource, even though this method also covers support for check constraints, which MySQL doesn't have. Setting the configuration propertyoverrideSupportsIntegrityEnhancementFacilitytotruecauses the driver to returntruefor this method. (Bug#12975)Added
com.mysql.jdbc.testsuite.url.defaultsystem property to set default JDBC url for testsuite (to speed up bug resolution when I'm working in Eclipse). (Bug#12975)logSlowQueriesshould give better info. (Bug#12230)Don't increase timeout for failover/reconnect. (Bug#6577)
Fixed client-side prepared statement bug with embedded
?characters inside quoted identifiers (it was recognized as a placeholder, when it was not).Do not permit
executeBatch()forCallableStatementswith registeredOUT/INOUTparameters (JDBC compliance).Fall back to platform-encoding for
URLDecoder.decode()when parsing driver URL properties if the platform doesn't have a two-argument version of this method.