Author: markt
Date: Tue Mar 22 20:46:24 2011
New Revision: 1084347
URL: http://svn.apache.org/viewvc?rev=1084347&view=rev
Log:
Update release notes for 1.3.1/1.4.1
Modified:
commons/proper/dbcp/trunk/RELEASE-NOTES.txt
Modified: commons/proper/dbcp/trunk/RELEASE-NOTES.txt
URL:
http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/RELEASE-NOTES.txt?rev=1084347&r1=1084346&r2=1084347&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/RELEASE-NOTES.txt (original)
+++ commons/proper/dbcp/trunk/RELEASE-NOTES.txt Tue Mar 22 20:46:24 2011
@@ -1,143 +1,32 @@
- commons-dbcp-1.3/1.4 RELEASE NOTES
+ commons-dbcp-1.3.1/1.4.1 RELEASE NOTES
-This release includes new features as well as bug fixes and enhancements.
Some bug fixes
-change semantics (e.g. connection close is now idempotent). The 1.3 and 1.4
releases of DBCP
-are built from the same sources. Version 1.4 supports JDBC 4, so requires JDK
1.6.
-Applications running under JDK 1.4-1.5 must use DBCP 1.3. Applications running
under JDK 1.6
-should use DBCP 1.4. Other than support for the added methods in JDBC 4, there
is nothing new
-or different in DBCP 1.4 vs. DBCP 1.3. The list of changes below since 1.2.2
applies to both
-the 1.3 and 1.4 release. Other than the issue related to adding JDBC 4
support (DBCP-191),
-all bug fixes or new features are included in both DBCP 1.3 and 1.4.
+This release includes new features as well as bug fixes and enhancements. The
+1.3.x and 1.4.x releases of DBCP are built from the same sources. Version
1.4.x
+supports JDBC 4, so requires JDK 1.6. Applications running under JDK 1.4-1.5
+must use DBCP 1.3.x. Applications running under JDK 1.6 should use DBCP 1.4.x.
+Other than support for the added methods in JDBC 4, there is nothing new or
+different in DBCP 1.4.x vs. DBCP 1.3.x. The list of changes below since 1.3/1.4
+applies to both the 1.3.1 and 1.4 release. All bug fixes or new features are
+included in both DBCP 1.3.x and 1.4.x.
-Changes since DBCP 1.2.2 include:
+Changes since DBCP 1.3/1.4 include:
New features:
-o DBCP-204: Made PoolingConnection pool CallableStatements. When
BasicDataSource's
- poolPreparedStatements property is true, CallableStatements are now
- pooled along with PreparedStatements. The maxOpenPreparedStatements
- property limits the combined number of Callable and Prepared statements
- that can be in use at a given time. Thanks to Wei Chen.
-o DBCP-226: Added a validationQueryTimeout configuration parameter to
BasicDataSource
- allowing the user to specify a timeout value (in seconds) for
connection
- validation queries.
-o DBCP-175: Added a connectionInitSqls configuration parameter to
BasicDataSource
- allowing the user to specify a collection of SQL statements to execute
- one time when a physical database connection is first opened. Thanks
to Jiri Melichna and Jerome Lacoste.
-o DBCP-228: Added support for pooling managed connections. Thanks to Dain
Sundstrom.
-o DBCP-230: Added BasicManagedDataSource, extending BasicDataSource.
- Also improved extensibility of BasicDataSource by encapsulating
- methods to create object pool, connection factory and datasource
- instance previously embedded in createDataSource. Thanks to Dain
Sundstrom.
+o None
Fixed Bugs:
-o DBCP-320: Eliminated poolKeys cache from PerUserPoolDataSource.
-o DBCP-321: Eliminated userKeys LRUMap cache from SharedPoolDataSource.
-o DBCP-319: Made private fields final where possible. Thanks to Sebastian
Bazley.
-o DBCP-318: PerUserPoolDataSource.getPooledConnectionAndInfo multi-threading
bug. Thanks to Sebastian Bazley.
-o DBCP-315: Remove throws clause from method that does not throw an
exception. Thanks to Sebastian Bazley.
-o DBCP-313: Remove code that catches and ignores Exceptions when calling
- PooledConnection.removeConnectionEventListener(ConnectionEventListener)
- as the method does not throw any Exceptions. Thanks to Sebastian
Bazley.
-o DBCP-316: Remove impossible null check. Thanks to Sebastian Bazley.
-o DBCP-303: Ensure Statement.getGeneratedKeys() works correctly with the CPDS
- adapter. Thanks to Dave Oxley.
-o DBCP-302: Removed incorrectly advertised ClassNotFoundException from
- JOCLContentHandler.ConstructorDetails.createObject(). Thanks to
Sebastian Bazley.
-o DBCP-8: Handle user password changes for InstanceKeyDataSources.
-o DBCP-294: Added PoolableManagedConnection and
PoolableManagedConnectionFactory so that
- pooled managed connections can unregister themselves from transaction
registries,
- avoiding resource leaks. Thanks to Philippe Mouawad.
-o DBCP-212: PoolableConnectionFactory.makeObject() is no longer
synchronized. This
- provides improved response times when load spikes at the cost of a
- faster rise in database server load. This change was made as a partial
- fix for DBCP-212. The synchronization changes in Commons Pool 1.5
complete
- the fix for this issue.
-o DBCP-242: Reverted DelegatingConnection close to 1.2.2 version to ensure
- open statements are closed before the underlying connection is closed.
-o DBCP-235: Refactor DelegatingConnection and ManagedConnection enable
overridden
- equals() and hashcode() to work correctly.
-o DBCP-215: Modified BasicDataSourceFactory to complete initialization of
the pool
- by creating initialSize connections rather than leaving this to lazy
- initialization when the pool is used.
-o DBCP-253: Eliminated masked _stmt field in descendents of
DelegatingStatement.
-o DBCP-191: Modified DBCP sources to support compilation under JDK 1.4-1.6
- using Ant flags to do conditional compilation. Thanks to Michael Heuer
and J. David Beutel.
-o DBCP-272: Added a static initializer to BasicDatasource that calls
- DriverManager.getDrivers() to force initialization before we ever do
- anything that might use Class.forName() to load (and register) a JDBC
- driver.
-o DBCP-4: Eliminated direct System.out calls in AbandonedTrace.
-o DBCP-264: Modified DelegatingStatment close to clear open batches.
-o DBCP-255: Eliminated unused private "parent" field in AbandonedTrace.
-o DBCP-273: Fixed errors handling boolean-valued Reference properties in
- InstanceKeyObjectFactory, DriverAdapterCPDS that were causing
- testOnBorrow and poolPreparedStatements properties to be incorrectly
- set when creating objects from javax.naming.Reference instances.
Thanks to Mark Lin.
-o DBCP-271: Made private instance fields of AbandonedTrace volatile (parent,
- createdBy, lastUsed, createdTime) or final (trace). Thanks to
Sebastian Bazley.
-o DBCP-270: Narrowed synchronization in AbandonedTrace to resolve an Evictor
deadlock. Thanks to Filip Hanik.
-o DBCP-218: Corrected Javadoc to state that getLoginTimeout and
setLoginTimeout are
- NOT supported by BasicDataSource.
-o DBCP-221: BasicDataSource.close() now permanently marks the data source as
closed,
- and no new connections can be obtained from the data source. At close
all
- idle connections are destroyed and the method returns. As the
remaining
- active connections are closed, they are destroyed.
-o DBCP-241: Eliminated potential sources of NullPointerExceptions in
- PoolingConnection.
-o DBCP-216: Improved error recovery and listener cleanup in
- KeyedCPDSConnectionFactory. Substituted calls to destroyObject with
- _pool.invalidateObject on error to ensure pool active count is
- decremented on error events. Ensured that events from closed or invalid
- connections are ignored and listeners are cleaned up. Thanks to Marcos
Sanz.
-o DBCP-245: Fixed error in SharedPoolDataSource causing incorrect passwords
to be
- stored under certain conditions. Thanks to Michael Drechsel.
-o DBCP-237: Added exception handler to ensure that PooledConnections are not
- orphaned when an exception occurs in setUpDefaults or clearWarnings in
- IntanceKeyDataSource.getConnection. Thanks to Oliver Matz.
-o DBCP-252: Made getPool synchronized in PoolableConnectionFactory.
- Fixes inconsistent synchronization accessing _pool. Thanks to
FindBugs.
-o DBCP-252: Fixed inconsistent synchronization on _rollbackAfterValidation,
- _validationQuery and _pool in CPDSConnectionFactory and
- KeyedCPDSConnectionFactory by making the first two volatile and making
- both getter and setter for _pool synchronized. Thanks to FindBugs.
+o DBCP-333: Correctly implemented the fix for DBCP-203 to allow the
+ configuration of the class loader to be used to load the JDBC driver.
Changes:
-o DBCP-314: Renamed variables with duplicate names in different scopes.
Thanks to Sebastian Bazley.
-o DBCP-312: Clarified javadoc for BasicDataSource close() method. Thanks to
Glen Mazza.
-o DBCP-305: Use an API specific exception for logging abandoned objects to
make
- scanning the logs for these exceptions simpler and to provide a better
- message that includes the creation time of the abandoned object.
Thanks to Christopher Schultz.
-o DBCP-203: Make the class loader used to load the JDBC driver configurable
for the
- BasicDatasource. Thanks to Mark Grand.
-o DBCP-289: Made XADataSource configurable in BasicManagedDataSource. Thanks
to Marc Kannegießer.
-o DBCP-276: Added connectionProperties property to DriverAdapterCPDS.
-o DBCP-265: Add a DelegatingDatabaseMetaData to track ResultSets returned
from
- DatabaseMetaData objects.
-o DBCP-211: Added Maven 2 pom.xml. Removed a block of code from TestJOCLed
that set
- the Xerces parser manually. This was to support early JDKs. The 1.3
- version of DBCP requires JDK 1.4+.
-o DBCP-233: Changed behavior to allow Connection, Statement,
PreparedStatement,
- CallableStatement and ResultSet to be closed multiple times. The first
- time close is called the resource is closed and any subsequent calls
- have no effect. This behavior is required as per the JavaDocs for these
- classes. Also added tests for closing all types multiple times and
- updated any tests that incorrectly assert that a resource can not be
- closed more then once. Fixes DBCP-3, DBCP-5, DBCP-23 and DBCP-134.
Thanks to Dain Sundstrom.
-o DBCP-11: Modified PoolingDataSource, PoolingDriver and DelegatingStatement
to
- assure that all returned Statements, PreparedStatements,
- CallableStatements and ResultSets are wrapped with a delegating object,
- which already properly handle the back pointers for Connection and
- Statement. Also added tests to to assure that the *same* object used
- to create the statement or result set is returned from either
- getConnection() or getStatement(). Thanks to Dain Sundstrom.
-o DBCP-143: SQLNestedException has been deprecated and will be replaced in
DBCP 2.0 with
- SQLException and standard Java exception chaining.
+o None
-For complete information on commons-dbcp, including instructions on how to
submit bug reports,
-patches, or suggestions for improvement, see the commons-dbcp website:
+For complete information on commons-dbcp, including instructions on how to
+submit bug reports, patches, or suggestions for improvement, see the
+commons-dbcp website:
http://commons.apache.org/dbcp/