Author: mmatthews
Date: 2007-04-10 21:22:26 +0200 (Tue, 10 Apr 2007)
New Revision: 5809
Log:
Notes for 5.1.0 alpha, and 5.0.6 (not yet released)
Modified:
trunk/refman-common/news-connector-j.xml
Modified: trunk/refman-common/news-connector-j.xml
===================================================================
--- trunk/refman-common/news-connector-j.xml 2007-04-10 18:57:11 UTC (rev 5808)
+++ trunk/refman-common/news-connector-j.xml 2007-04-10 19:22:26 UTC (rev 5809)
Changed blocks: 3, Lines Added: 295, Lines Deleted: 1; 11382 bytes
@@ -17,7 +17,7 @@
<section id="cj-news-5-1-0">
- <title>Changes in MySQL Connector/J 5.1.0 (Not yet released)</title>
+ <title>Changes in MySQL Connector/J 5.1.0 (11 April 2007)</title>
<para>
<emphasis role="bold">Important change:</emphasis> Due to a
@@ -49,7 +49,114 @@
<literal>useSSPSCompatibleTimezoneShift=true</literal>.
</para>
</note>
+
+ <para>
+ Functionality added or changed:
+ </para>
+ <itemizedlist>
+
+ <listitem>
+ <para>Re-worked Ant buildfile to build JDBC-4.0 classes separately, as well
+ as support building under Eclipse (since Eclipse can't mix/match JDKs).
+ </para>
+
+ <para>
+ To build, you must set <literal>JAVA_HOME</literal> to J2SDK-1.4.2 or Java-5, and set
+ the following properties on your Ant commandline:
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal>com.mysql.jdbc.java6.javac</literal> - full path to your Java-6 <literal>javac</literal> executable
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>com.mysql.jdbc.java6.rtjar</literal> - full path to your Java-6 <literal>rt.jar</literal> file
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>New feature - driver will automatically adjust 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. (configuration property is named
+ "netTimeoutForStreamingResults", value has unit of seconds,
+ the value '0' means the driver will not try and adjust this value).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added support for JDBC-4.0 categorized SQLExceptions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Refactored CommunicationsException into a JDBC-3.0 version, and a JDBC-4.0
+ version (which extends <literal>SQLRecoverableException</literal>, now that it exists).
+ </para>
+
+ <note>
+ <para>
+ This change means that if you were catching
+ <literal>com.mysql.jdbc.CommunicationsException</literal> in your applications instead
+ of looking at the SQLState class of "08", and are moving to Java 6
+ (or newer), you need to change your imports to that exception
+ to be <literal>com.mysql.jdbc.exceptions.jdbc4.CommunicationsException</literal>, as
+ the old class will not be instantiated for communications link-related
+ errors under Java 6.
+ </para>
+ </note>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added support for JDBC-4.0's client information. The backend storage
+ of information provided via Connection.setClientInfo() and retrieved
+ by Connection.getClientInfo() is pluggable by any class that implements
+ the com.mysql.jdbc.JDBC4ClientInfoProvider interface and has a no-args
+ constructor.
+ </para>
+
+ <para>
+ The implementation used by the driver is configured using the
+ <literal>clientInfoProvider</literal> configuration property (with a default of value
+ of "com.mysql.jdbc.JDBC4CommentClientInfoProvider", an implementation
+ which lists the client info as a comment prepended to every query
+ sent to the server).
+ </para>
+
+ <para>
+ This functionality is only available when using Java-6 or newer.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added support for JDBC-4.0's SQLXML interfaces.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added support for JDBC-4.0's <literal>Wrapper</literal> interface.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added support for JDBC-4.0's <literal>NCLOB</literal>, and
+ <literal>NCHAR</literal>/<literal>NVARCHAR</literal> types.
+ </para>
+ </listitem>
+ </itemizedlist>
</section>
</section>
@@ -58,6 +165,193 @@
<title>Changes in MySQL Connector/J 5.0.x</title>
+ <section id="cj-news-5-0-6">
+
+ <title>Changes in MySQL Connector/J 5.0.6 (Not yet released)</title>
+
+ <para>
+ Functionality added or changed:
+ </para>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Give better error message when "streaming" result sets, and the connection
+ gets clobbered because of exceeding <literal>net_write_timeout</literal> on the server.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ New configuration property, <literal>enableQueryTimeouts</literal> (default "true").
+ </para>
+
+ <para>
+ When enabled, query timeouts set via <literal>Statement.setQueryTimeout()</literal> use a
+ shared <literal>java.util.Timer</literal> 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 bundle).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added configuration property <literal>padCharsWithSpace</literal> (defaults to
+ "false"). If set to "true", and a result set column has the
+ <literal>CHAR</literal> 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 compliance).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Added configuration property <literal>useDynamicCharsetInfo</literal>. 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.
+ </para>
+
+ <note>
+ <para>
+ Note: this only affects the <literal>padCharsWithSpace</literal> configuration property and the
+ <literal>ResultSetMetaData.getColumnDisplayWidth()</literal> method.
+ </para>
+ </note>
+ </listitem>
+
+ <listitem>
+ <para>
+ 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.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ <para>
+ Bugs fixed:
+ </para>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>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. (Bug #25545)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>PreparedStatement</literal> is not closed in
+ <literal>BlobFromLocator.getBytes()</literal>. (Bug #26592)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Whitespace surrounding storage/size specifiers in
+ stored procedure parameters declaration causes <literal>NumberFormatException</literal> to
+ be thrown when calling stored procedure on JDK-1.5 or newer, as the Number
+ classes in JDK-1.5+ are whitespace intolerant. (Bug #25624)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ When the configuration property <literal>useCursorFetch</literal> was set to
+ "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. (Bug #26173)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ 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. (Bug #26959)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fast date/time parsing doesn't take into
+ account 00:00:00 as a legal value. (Bug #26789)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>ResultSet.get*()</literal> with a column index < 1 returns
+ misleading error message. (Bug #27317)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>Statement.setMaxRows()</literal> is not effective on result
+ sets materialized from cursors. (Bug #25517)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para><literal>CALL /* ... */ some_proc()</literal> doesn't work. As a side effect
+ of this fix, you can now use <literal>/* */</literal> and <literal>#</literal> comments when preparing statements using
+ client-side prepared statement emulation. (Bug #27400)
+ </para>
+
+ <para>
+ 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.
+ </para>
+
+ <note>
+ <para>
+ The statement when sent to the server will contain the comments
+ as-is, they're not stripped during the process of preparing the <literal>PreparedStatement</literal>
+ or <literal>CallableStatement</literal>.
+ </para>
+ </note>
+ </listitem>
+
+ <listitem>
+ <para><literal>BIT(> 1)</literal> is returned as <literal>java.lang.String</literal> from <literal>ResultSet.getObject()</literal>
+ rather than <literal>byte[]</literal>. (Bug #25328)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>CallableStatements</literal> with <literal>OUT/INOUT</literal> parameters that
+ are "binary" (<literal>BLOB</literal>, <literal>BIT</literal>, <literal>(VAR)BINARY</literal>, <literal>JAVA_OBJECT</literal>) have extra 7 bytes.
+ (Bug #25715)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Connection.getTransactionIsolation()</literal> uses
+ "<literal>SHOW VARIABLES LIKE</literal>" which is very inefficient on MySQL-5.0+ servers. (Bug #27655)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </section>
+
<section id="cj-news-5-0-5">
<title>Changes in MySQL Connector/J 5.0.5 (02 March 2007)</title>
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r5809 - trunk/refman-common | mmatthews | 10 Apr |