List:Announcements« Previous MessageNext Message »
From:Mark Matthews Date:January 21 2010 9:08pm
Subject:MySQL Connector/J 5.1.11 Has Been Released!
View as plain text  
Hi,

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

Version 5.1.11 is suitable for use with any MySQL version including MySQL-5.0, MySQL-5.1
or MySQL-5.5.

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

http://dev.mysql.com/downloads/connector/j/5.1.html

and mirror sites as well as Maven-2 repositories (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

http://dev.mysql.com/doc/refman/5.1/en/cj-news.html

and "Upgrading" sections

http://dev.mysql.com/doc/refman/5.1/en/cj-upgrading.html

in the manual before upgrading as well as the "CHANGES" file in the download archive to be
aware of changes in behavior that might affect
your application.

We welcome and appreciate your feedback, bug reports, bug fixes, patches etc.:

http://forge.mysql.com/wiki/Contributing

MySQL Connector/J 5.1.11 includes the following changes targeted at scalability and
performance:

    - Fix for BUG#50288 - NullPointerException possible during
invalidateCurrentConnection() for load-balanced connections.

    - Fix for BUG#48605 - Ping for load balanced connections leaves closed connections in
liveConnections, causing subsequent Exceptions when that connection is used.
 
    - Fix for BUG#48442 - Load-balanced Connection object returns inconsistent results for
hashCode() and equals() dependent upon state of underlying connections.
 
    - Fix for BUG#48172 - Batch rewrite requires space immediately after "VALUES"

    - Fix for BUG#48486 Cannot use load balanced connections with
MysqlConnectionPoolDataSource.
      
    - "Replication" connections (those with URLs that start with 
      jdbc:mysql:replication) now use a jdbc:mysql:loadbalance connection
      under the hood for the slave "pool". This also means that one can set
      load balancing properties such as "loadBalanceBlacklistTimeout" and
      "loadBalanceStrategy" to choose a mechanism for balancing the load and
      failover/fault tolerance strategy for the slave pool. This work was done
      in order to fix Bug#49537.
      
    - Fixed Bug#36565 - permgen leak from java.util.Timer. Unfortunately no great
      fix exists that lets us keep the timer shared amongst connection instances, so
      instead it's lazily created if need be per-instance, and torn down when the 
      connection is closed.
      
    - Fixed BUG#49700 - Connections from ConnectionPoolDataSource don't
      maintain any values set with "sesssionVariables=...". This was a bug
      in Connection.changeUser()/resetServerState(), we now resubmit the
      session variables during the execution of these methods.

(special thanks to Todd Farmer from the Sun/MySQL support team for the numerous fixes to
load-balanced connections!)

As well as the following general bug fixes and improvements:
 
    - Fix for BUG#49607 - Provide Connection context in ExceptionInterceptor.
 
    - Fix for BUG#49745 - deleteRow() for updatable result sets can cause full table scan
because escaped hex values are used for primary key identifiers.

    - Fix for Bug#32525 - "noDatetimeStringSync" doesn't work for server-side prepared
statements. Now it does.

    - Hooked up exception interceptors so they get called now.
    
    - Rev'd the statement interceptor interface to pass on some server flags, warning
counts and errors. See 
      the com.mysql.jdbc.StatementInteceptorsV2 interface for more details. The driver
will create adaptors to
      transparently convert older implementations to the newer interface at runtime.
      
    - Statement Interceptors are now enabled at connection instantiation, but 
      can not return result sets (they will be ignored)  until the connection 
      has bootstrapped itself. If during the init() method your interceptor 
      requires access to the connection itself, it should ensure that methods 
      that might throw exceptions if the connection is closed should handle 
      this in a robust manner.

    - Statement Interceptors didn't completely intercept server-side prepared statements.

Enjoy!

	-Mark
-- 
Mark Matthews, Architect - Enterprise Tools
MySQL @ Sun Microsystems, Inc., http://www.sun.com/mysql/




Thread