Connector/J 3.1.9 リリース

投稿日時 2005-6-23 12:51:06 | トピック: MySQL

Connector/J の バージョン3.1系列の最新版である バージョン 3.1.9 が公開されました。
Connector/J は Type-IV(all-java) の MySQL JDBCドライバです。

※直後に 3.1.10 が公開されています。ご注意ください。


MySQL 4.1.2 以降でのサーバーサイドの prepared statement を使いたい場合にはこのバージョンが必要です。

#MySQL5.0.xでの CallableStatements も。


ダウンロード:
http://dev.mysql.com/downloads/connector/j/3.1.html


Connctor/J 3.0系列からのアップグレードを行う際には、下記マニュアルの "Upgrades"の章をよくお読みください。
http://dev.mysql.com/doc/connector/j/en/cj-upgrading-3-0-to-3-1.html


以下変更ログ:
--------------------------------

■Version 3.1.9-stable 2005/06/22

- Overhaul of character set configuration, everything now lives in a properties file.

- Driver now correctly uses CP932 if available on the server for Windows-31J, CP932 and MS932 java encoding names, otherwise it resorts to SJIS, which is only a close approximation. Currently only MySQL-5.0.3 and newer (and MySQL-4.1.12 or .13, depending on when the character set gets backported) can reliably support any variant of CP932.

- Fixed BUG#9064 - com.mysql.jdbc.PreparedStatement.ParseInfo does unnecessary call to toCharArray().

- Fixed Bug#10144 - Memory leak in ServerPreparedStatement if serverPrepare() fails.

- Actually write manifest file to correct place so it ends up in the binary jar file.

- Added "createDatabaseIfNotExist" property (default is "false"), which will cause the driver to ask the server to create the database specified in the URL if it doesn't exist. You must have the appropriate privileges for database creation for this to work.

- Fixed BUG#10156 - Unsigned SMALLINT treated as signed for ResultSet.getInt(), fixed all cases for UNSIGNED integer values and server-side prepared statements, as well as ResultSet.getObject() for UNSIGNED TINYINT.

- Fixed BUG#10155, double quotes not recognized when parsing client-side prepared statements.

- Made enableStreamingResults() visible on com.mysql.jdbc.jdbc2.optional.StatementWrapper.

- Made ServerPreparedStatement.asSql() work correctly so auto-explain functionality would work with server-side prepared statements.

- Made JDBC2-compliant wrappers public in order to allow access to vendor extensions.

- Cleaned up logging of profiler events, moved code to dump a profiler event as a string to com.mysql.jdbc.log.LogUtils so that third parties can use it.

- DatabaseMetaData.supportsMultipleOpenResults() now returns true. The driver has supported this for some time, DBMD just missed that fact.

- Fixed BUG#10310 - Driver doesn't support {?=CALL(...)} for calling stored functions. This involved adding support for function retrieval to DatabaseMetaData.getProcedures() and getProcedureColumns() as well.

- Fixed BUG#10485, SQLException thrown when retrieving YEAR(2) with ResultSet.getString(). The driver will now always treat YEAR types as java.sql.Dates and return the correct values for getString().
Alternatively, the "yearIsDateType" connection property can be set to "false" and the values will be treated as SHORTs.

- The datatype returned for TINYINT(1) columns when "tinyInt1isBit=true" (the default) can be switched between Types.BOOLEAN and Types.BIT using the new configuration property "transformedBitIsBoolean", which defaults to "false". If set to "false" (the default), DatabaseMetaData.getColumns() and ResultSetMetaData.getColumnType() will return Types.BOOLEAN for TINYINT(1) columns. If "true", Types.BOOLEAN will be returned instead.
Irregardless of this configuration property, if "tinyInt1isBit" is enabled, columns with the type TINYINT(1) will be returned as java.lang.Boolean instances from ResultSet.getObject(..), and ResultSetMetaData.getColumnClassName() will return "java.lang.Boolean".

- Fixed BUG#10496 - SQLException is thrown when using property "characterSetResults" with cp932 or eucjpms.

- Reorganized directory layout, sources now in "src" folder, don't pollute parent directory when building, now output goes to "./build", distribution goes to "./dist".

- Added support/bug hunting feature that generates .sql test scripts to STDERR when "autoGenerateTestcaseScript" is set to "true".

- Fixed BUG#10850 - 0-length streams not sent to server when using server-side prepared statements.

- Setting "cachePrepStmts=true" now causes the Connection to also cache the check the driver performs to determine if a prepared statement can be server-side or not, as well as caches server-side prepared statements for the lifetime of a connection. As before, the "prepStmtCacheSize" parameter controls the size of these caches.

- Try to handle OutOfMemoryErrors more gracefully. Although not much can be done, they will in most cases close the connection they happened on so that further operations don't run into a connection in some unknown state. When an OOM has happened, any further operations on the connection will fail with a "Connection closed" exception that will also list the OOM exception as the reason for the implicit connection close event.

- Don't send COM_RESET_STMT for each execution of a server-side prepared statement if it isn't required.

- Driver detects if you're running MySQL-5.0.7 or later, and does not scan for "LIMIT ?[,?]" in statements being prepared, as the server supports those types of queries now.

- Fixed BUG#11115, Varbinary data corrupted when using server-side prepared statements and ResultSet.getBytes().

- Connection.setCatalog() is now aware of the "useLocalSessionState" configuration property, which when set to true will prevent the driver from sending "USE ..." to the server if the requested catalog is the same as the current catalog.

- Added the following configuration bundles, use one or many via the "useConfigs" configuration property:
* maxPerformance -- maximum performance without being reckless
* solarisMaxPerformance -- maximum performance for Solaris, avoids syscalls where it can
* 3-0-Compat -- Compatibility with Connector/J 3.0.x functionality

- Added "maintainTimeStats" configuration property (defaults to "true"), which tells the driver whether or not to keep track of the last query time and the last successful packet sent to the server's time. If set to false, removes two syscalls per query.

- Fixed BUG#11259, autoReconnect ping causes exception on connection startup.

- Fixed BUG#11360 Connector/J dumping query into SQLException twice

- Fixed PreparedStatement.setClob() not accepting null as a parameter.

- Fixed BUG#11411 - Production package doesn't include JBoss integration classes.

- Removed nonsensical "costly type conversion" warnings when using usage advisor.





MyNA Web Siteにて更に多くのニュース記事をよむことができます
http://www.mysql.gr.jp/frame

このニュース記事が掲載されているURL:
http://www.mysql.gr.jp/frame/article.php?storyid=43