MySQL Lists are EOL. Please join:

List:MySQL and Java« Previous MessageNext Message »
From:Mark Matthews Date:April 12 2007 4:43pm
Subject:MySQL Connector/J 5.1.0 Alpha has been released
View as plain text  
Hash: SHA1


MySQL Connector/J 5.1.0 a new alpha version of the Type-IV pure-Java JDBC
driver for MySQL has been released. 

Version 5.1.0 is suitable for use with any MySQL version including
MySQL-4.1, MySQL-5.0, MySQL-5.1 beta or the MySQL-5.2 Falcon "Preview".

It is now available in source and binary form from the Connector/J download
pages at 

and mirror sites (note that not all mirror sites may be up to date at this
point of time - if you can't find this version on some mirror, please try
again later or choose another download site.)

As always, we recommend that you check the change log 

and "Upgrading" sections 

in the manual before upgrading to be aware of changes in behavior that might
affect your application. 

We welcome and appreciate your feedback, bug reports, bug fixes, patches

This is the first pre-production release of our implementation of the new
JDBC-4.0 API. 

This alpha release, as any other pre-production release, should not be
installed on production level systems or systems with critical data. It is
good practice to back up your data before installing any new version of
software. Although MySQL has worked very hard to ensure a high level of
quality, protect your data by making a backup as you would for any other
software pre-production release.

MySQL Connector/J 5.1.0 includes the following new features:

  * JDBC-4.0 ease-of-development features including auto-registration with
the DriverManager via the service provider mechanism, standardized
Connection validity checks and categorized SQLExceptions based on
recoverability/retry-ability and class of the underlying error. 

  * JDBC-4.0 standardized unwrapping to interfaces that include vendor

  * Support for JDBC-4.0 XML processing via JAXP interfaces to DOM, SAX and

  * JDBC-4.0 support for setting per-connection client information (which
can be viewed in the comments section of a query via "SHOW PROCESSLIST" on a
MySQL server, or can be extended to support custom persistence of the
information via a public interface) 

  * Support for JDBC-4.0 NCHAR, NVARCHAR and NCLOB types 

  * The driver will automatically adjust the server session variable
"net_write_timeout" when it determines its been asked for a "streaming"
result, and resets it to the previous value when the result set has been
consumed. (The configuration property is named
"netTimeoutForStreamingResults", with a unit of seconds, the value '0' means
the driver will not try and adjust this value).

This release also includes the following bug fixes that are also present in
Connector/J 5.0.6 (not yet released):

  * Fixed BUG#25545 - Client options not sent correctly when using SSL,
leading to stored procedures not being able to return results. Thanks to Don
Cohen for the bug report, testcase and patch.
  * Fixed BUG#26592 - PreparedStatement is not closed in
  * Fixed BUG#25624 - Whitespace surrounding storage/size specifiers in
stored procedure parameters declaration causes NumberFormatException to be
thrown when calling stored procedure on JDK-1.5 or newer, as the Number
classes in JDK-1.5+ are whitespace intolerant.
  * Fixed BUG#26173 - When useCursorFetch=true, sometimes server would
return new, more exact metadata during the execution of the server-side
prepared statement that enables this functionality, which the driver ignored
(using the original metadata returned during prepare()), causing corrupt
reading of data due to type mismatch when the actual rows were returned.

  * Fixed BUG#26959 - comments in DDL of stored procedures/functions confuse
procedure parser, and thus metadata about them can not be created, leading
to inability to retrieve said metadata, or execute procedures that have
certain comments in them.
  * Give better error message when "streaming" result sets, and the
connection gets clobbered because of exceeding net_write_timeout on the
server. (which is basically what the error message says too).

  * Fixed BUG#26789 - fast date/time parsing doesn't take into account
00:00:00 as a legal value.
  * Fixed BUG#27317 - ResultSet.get*() with a column index < 1 returns
misleading error message.
  * Fixed BUG#25517 - Statement.setMaxRows() is not effective on result sets
materialized from cursors.
  * New configuration property, "enableQueryTimeouts" (default "true"). When
enabled, query timeouts set via Statement.setQueryTimeout() use a shared
java.util.Timer instance for scheduling. Even if the timeout doesn't expire
before the query is processed, there will be memory used by the TimerTask
for the given timeout which won't be reclaimed until the time the timeout
would have expired if it hadn't been cancelled by the driver. High-load
environments might want to consider disabling this functionality. (this
configuration property is part of the "maxPerformance" configuration
  * Fixed BUG#27400 - CALL /* ... */ some_proc() doesn't work. As a side
effect of this fix, you can now use /* */ and # comments when preparing
statements using client-side prepared statement emulation.
    If the comments happen to contain parameter markers '?', they will be
treated as belonging to the comment (i.e. not recognized) rather than being
a parameter of the statement.
    Note that the statement when sent to the server will contain the
comments as-is, they're not stripped during the process of preparing the
PreparedStatement or CallableStatement.
  * Fixed BUG#25328 - BIT(> 1) is returned as java.lang.String from
ResultSet.getObject() rather than byte[].
  * Fixed BUG#25715 - CallableStatements with OUT/INOUT parameters that are
"binary" (blobs, bits, (var)binary, java_object) have extra 7 bytes (which
happens to be the _binary introducer!)
  * Added configuration property "padCharsWithSpace" (defaults to "false").
If set to "true", and a result set column has the CHAR type and the value
does not fill the amount of characters specified in the DDL for the column,
the driver will pad the remaining characters with space (for ANSI
  * Fixed BUG#27655 - Connection.getTransactionIsolation() uses "SHOW
VARIABLES LIKE" which is very inefficient n MySQL-5.0+
  * Added configuration property "useDynamicCharsetInfo". If set to "false"
(the default), the driver will use a per-connection cache of character set
information queried from the server when necessary, or when set to "true",
use a built-in static mapping that is more efficient, but isn't aware of
custom character sets or character sets implemented after the release of the
JDBC driver.
    Note: this only affects the "padCharsWithSpace" configuration property
and the ResultSetMetaData.getColumnDisplayWidth() method.
  * More intelligent initial packet sizes for the "shared" packets are used
(512 bytes, rather than 16K), and initial packets used during handshake are
now sized appropriately as to not require reallocation.
  * Fixed issue where calling getGeneratedKeys() on a prepared statement
after calling execute() didn't always return the generated keys
(executeUpdate() worked fine however).



- -- 
Mark Matthews, Architect (Client Connectivity)
MySQL, Inc. Chicago, USA -
Version: GnuPG v1.4.6 (MingW32)


MySQL Connector/J 5.1.0 Alpha has been releasedMark Matthews12 Apr