Connector/J 3.1.7 リリース
投稿日時 2005-2-20 15:38:40 | トピック: MySQL
| Java の mysql接続環境である Connector/KJ の最新バージョンが公開されました。 今回のバージョンは Version 3.1.7-stable です。
#4718, #7686, #7715, #7952, #8096, #8428, #8484, #8487 のバグが修正されています。詳細は以下のチェンジログを参照ください。
- Fixed BUG#7686, Timestamp key column data needed "_binary'" stripped for UpdatableResultSet.refreshRow().
- Fixed BUG#7715 - Timestamps converted incorrectly to strings with Server-side prepared statements and updatable result sets.
- Detect new sql_mode variable in string form (it used to be integer) and adjust quoting method for strings appropriately.
- Added 'holdResultsOpenOverStatementClose' property (default is false), that keeps result sets open over statement.close() or new execution on same statement (suggested by Kevin Burton).
- Fixed BUG#7952 -- Infinite recursion when 'falling back' to master in failover configuration.
- Disable multi-statements (if enabled) for MySQL-4.1 versions prior to version 4.1.10 if the query cache is enabled, as the server returns wrong results in this configuration.
- Fixed duplicated code in configureClientCharset() that prevented useOldUTF8Behavior=true from working properly.
- Removed 'dontUnpackBinaryResults' functionality, the driver now always stores results from server-side prepared statements as-is from the server and unpacks them on demand.
- Fixed BUG#8096 where emulated locators corrupt binary data when using server-side prepared statements.
- Fixed synchronization issue with ServerPreparedStatement.serverPrepare() that could cause deadlocks/crashes if connection was shared between threads.
- By default, the driver now scans SQL you are preparing via all variants of Connection.prepareStatement() to determine if it is a supported type of statement to prepare on the server side, and if it is not supported by the server, it instead prepares it as a client-side emulated prepared statement (BUG#4718). You can disable this by passing 'emulateUnsupportedPstmts=false' in your JDBC URL.
- Remove _binary introducer from parameters used as in/out parameters in CallableStatement.
- Always return byte[]s for output parameters registered as *BINARY.
- Send correct value for 'boolean' "true" to server for PreparedStatement.setObject(n, "true", Types.BIT).
- Fixed bug with Connection not caching statements from prepareStatement() when the statement wasn't a server-side prepared statement.
- Choose correct 'direction' to apply time adjustments when both client and server are in GMT timezone when using ResultSet.get(..., cal) and PreparedStatement.set(...., cal).
- Added 'dontTrackOpenResources' option (default is false, to be JDBC compliant), which helps with memory use for non-well-behaved apps (i.e applications which don't close Statements when they should).
- Fixed BUG#8428 - ResultSet.getString() doesn't maintain format stored on server, bug fix only enabled when 'noDatetimeStringSync' property is set to 'true' (the default is 'false').
- Fixed NPE in ResultSet.realClose() when using usage advisor and result set was already closed.
- Fixed BUG#8487 - PreparedStatements not creating streaming result sets.
- Don't pass NULL to String.valueOf() in ResultSet.getNativeConvertToString(), as it stringifies it (i.e. returns "null"), which is not correct for the method in question.
- Fixed BUG#8484 - ResultSet.getBigDecimal() throws exception when rounding would need to occur to set scale. The driver now chooses a rounding mode of 'half up' if non-rounding BigDecimal.setScale() fails.
- Added 'useLocalSessionState' configuration property, when set to 'true' the JDBC driver trusts that the application is well-behaved and only sets autocommit and transaction isolation levels using the methods provided on java.sql.Connection, and therefore can manipulate these values in many cases without incurring round-trips to the database server.
- Added enableStreamingResults() to Statement for connection pool implementations that check Statement.setFetchSize() for specification-compliant values. Call Statement.setFetchSize(>=0) to disable the streaming results for that statement.
- Added support for BIT type in MySQL-5.0.3. The driver will treat BIT(1-8) as the JDBC standard BIT type (which maps to java.lang.Boolean), as the server does not currently send enough information to determine the size of a bitfield when < 9 bits are declared. BIT(>9) will be treated as VARBINARY, and will return byte[] when getObject() is called.
|
|