You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ps...@apache.org on 2013/12/30 22:44:15 UTC
svn commit: r4016 - in /release/commons/pool: ./ binaries/ source/
Author: psteitz
Date: Mon Dec 30 21:44:13 2013
New Revision: 4016
Log:
Published pool 2.1 release.
Added:
release/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz
release/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.asc
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.asc
release/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.md5
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.md5
release/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.sha1
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.tar.gz.sha1
release/commons/pool/binaries/commons-pool2-2.1-bin.zip
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.zip
release/commons/pool/binaries/commons-pool2-2.1-bin.zip.asc
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.zip.asc
release/commons/pool/binaries/commons-pool2-2.1-bin.zip.md5
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.zip.md5
release/commons/pool/binaries/commons-pool2-2.1-bin.zip.sha1
- copied unchanged from r3987, dev/commons/pool/binaries/commons-pool2-2.1-bin.zip.sha1
release/commons/pool/source/commons-pool2-2.1-src.tar.gz
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.tar.gz
release/commons/pool/source/commons-pool2-2.1-src.tar.gz.asc
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.tar.gz.asc
release/commons/pool/source/commons-pool2-2.1-src.tar.gz.md5
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.tar.gz.md5
release/commons/pool/source/commons-pool2-2.1-src.tar.gz.sha1
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.tar.gz.sha1
release/commons/pool/source/commons-pool2-2.1-src.zip
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.zip
release/commons/pool/source/commons-pool2-2.1-src.zip.asc
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.zip.asc
release/commons/pool/source/commons-pool2-2.1-src.zip.md5
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.zip.md5
release/commons/pool/source/commons-pool2-2.1-src.zip.sha1
- copied unchanged from r3987, dev/commons/pool/source/commons-pool2-2.1-src.zip.sha1
Modified:
release/commons/pool/README.html
release/commons/pool/RELEASE-NOTES.txt
release/commons/pool/binaries/README.html
release/commons/pool/source/README.html
Modified: release/commons/pool/README.html
==============================================================================
--- release/commons/pool/README.html (original)
+++ release/commons/pool/README.html Mon Dec 30 21:44:13 2013
@@ -1,6 +1,6 @@
-<h1>Commons POOL 2.0</h1>
+<h1>Commons POOL 2.1</h1>
-<p>This is the 2.0 release of commons-pool. It is available in both binary and source distributions.</p>
+<p>This is the 2.1 release of commons-pool. It is available in both binary and source distributions.</p>
<p><font color="red" size="+2">Note:</font>
The tar files in the distribution use GNU tar extensions
@@ -26,13 +26,13 @@
<pre>Always test available signatures, <i>e.g.</i>,
$ pgpk -a KEYS
-$ pgpv commons-pool2-2.0.tar.gz.asc
+$ pgpv commons-pool2-2.1.tar.gz.asc
or,
$ pgp -ka KEYS
-$ pgp commons-pool2-2.0.tar.gz.asc
+$ pgp commons-pool2-2.1.tar.gz.asc
or,
$ gpg --import KEYS
-$ gpg --verify commons-pool2-2.0.tar.gz.asc
+$ gpg --verify commons-pool2-2.1.tar.gz.asc
</pre>
<p>
Modified: release/commons/pool/RELEASE-NOTES.txt
==============================================================================
--- release/commons/pool/RELEASE-NOTES.txt (original)
+++ release/commons/pool/RELEASE-NOTES.txt Mon Dec 30 21:44:13 2013
@@ -1,81 +1,44 @@
- Apache Commons Pool 2.0 RELEASE NOTES
+ Apache Commons Pool 2.1 RELEASE NOTES
-The Apache Commons Pool team is pleased to announce the release of Apache
-Commons Pool 2.0
+The Apache Commons Pool team is pleased to announce the release of Apache Commons Pool 2.1.
-Apache Commons Object Pooling Library
+Apache Commons Pool provides an object-pooling API and a number of object pool implementations.
+Version 2 contains a completely re-written pooling implementation compared to the 1.x series.
+In addition to performance and scalability improvements, version 2 includes robust instance
+tracking and pool monitoring. Version 2 requires JDK level 1.6 or above.
-This is a major new release that provides significant performance improvements
-in high concurrency environments. Pools now provide a mechanism for tracking
-objects that have been borrowed from the pool but not returned. There have been
-numerous API changes to support these and other new features as well as to
-clarify behaviour and improve consistency across the API. This release requires
-JDK level 1.6 or above.
-
-The changes to the API are not backwards compatible with Apache Commons Pool
-1.x. Therefore, to avoid dependency conflicts, the package name and Maven
-co-ordinates have changed as follows:
-Package name: org.apache.commons.pool2
-Maven Group ID: org.apache.commons
-Maven Artifact ID: commons-pool2
+No client code changes are required to migrate from version 2.0 to 2.1. Users of version 1.x
+should consult the migration guide on the Commons Pool web site.
-Changes in this version (relative to Apache Commons Pool 1.6) include:
+This is a maintenance release that includes a small number of new features as well as
+including bugfixes and test case improvements.
+
+Changes in version 2.1 include:
New features:
-o POOL-211: Add support for proxy wrappers to ObjectPool and KeyedObjectPool. The
- primary advantage of these wrappers is that use of pooled objects is
- prevented after they have been returned to the pool. Thanks to Brad Koehn.
+o POOL-241: Expand the coverage of the unit tests. Thanks to Bruno P. Kinoshita.
+o Provide more control over the names under which Pools are registered in
+ JMX so components using the pools can register the pools they use under a
+ related name.
+o Include the number of times an object has been borrowed from the Pool when
+ the DefaultPooledObject wrapper is used and expose this property via JMX.
+o POOL-245: Further expansion of the coverage of the unit tests. Thanks to Bruno P. Kinoshita.
Fixed Bugs:
-o POOL-221: PooledObject.state does not need to be volatile
-o POOL-220: Suppress a FindBugs warning
-o POOL-215: GenericKeyedObjectPool - multiple mutable fields not published safely.
-o POOL-214: GenericObjectPool.evictionPolicy not thread-safe
-o POOL-212: GenericObjectPool allows maxIdle < minIdle
-o POOL-207: GenericKeyedObjectPool.clear() has unnecessary null check of objectDequeue
-o POOL-201: Classes Generic[Keyed]ObjectPoolConfig are generic - but why?
-o POOL-200: GOP/GKOP don't consistently use getters to access fields
-o POOL-199: GOP/GKOP evict() method is not synchronised and is not thread-safe
-o POOL-197: PooledObject: risky init of lastBorrowTime & lastReturnTime
-o POOL-196: PooledObject.getActiveTimeMillis() does not synch. access to lastReturnTime and lastBorrowTime
-o POOL-188: Remove confusing method PoolUtils.ErodingKeyedObjectPool.numIdle(K key). Thanks to sebb.
-o POOL-150: Ensure GKOP.preparePool() throws an exception if no factory has been
- defined.
-o POOL-134: Add the ability to specify a per call wait time when borrowing an object.
-o POOL-121: Provide a name for the eviction timer thread.
-o POOL-173: Reduce duplication in configuration code.
-o POOL-178: Re-factor common code into common base classes.
-o POOL-100: Allow custom eviction policies to be defined.
-
-Changes:
-o POOL-229: Added abandoned object removal (moved from DBCP) to GenericObjectPool.
-o POOL-217: Use an IODH for PoolUtils.MIN_IDLE_TIMER Thanks to sebb.
-o POOL-216: GenericKeyedObjectPool.ensureMinIdle(K) does not need to check getMinIdlePerKey().
-o POOL-194: Replace synchronized blocks in PoolUtils with Read/Write locks.
-o POOL-83: Support Java 1.5 Generics.
-o POOL-186: Developer documentation and examples have to be updated once the 2.0 repackaging has been done
-o Switch GOP to use a pooling mechanism based on java.util.concurrent and a
- LinkedBlockingQueue implementation from Apache Harmony (originally by Doug
- Lea and the JSR-166 expert group).
-o Make deprecated protected attributes private, requiring that access is via
- the appropriate getters.
-o Code clean-up. Add missing @Override annotations, remove unused code,
- remove deprecated code and unnecessary code.
-o Introduce an Enum (WhenExhaustedAction) to control pool behaviour when no
- more objects are available to allocate.
-o Remove WhenExhuastedAction.GROW since it is equivalent to
- WhenExhuastedAction.FAIL with a maxActive value of Integer.MAX_VALUE.
-o POOL-155: Guard against multiple returns of the same object to the pool and ensure
- that only objects borrowed from the pool are returned to it.
-o Remove setFactory() method from GOP.
-o POOL-172: Expose GOP and GKOP attributes via JMX.
-o POOL-98: Add additional attributes (also accessible via JMX) for monitoring.
-o Change meaning of zero for maxWait to a maximum wait of zero milliseconds
- rather than the unexpected infinite wait.
+o POOL-243: Added missing create counter decrement in GenericKeyedObjectPool create method on factory
+ exception path. Prior to this fix, exceptions thrown by factory makeObject calls could leak
+ per key capacity. Thanks to Michal Sabo.
+o POOL-240: Ensured that blocked threads waiting on a depleted pool get served when
+ objects are destroyed due to validation or passivation failures in
+ returnObject or when a checked out instance is invalidated. Thanks to Dan McNulty.
+o POOL-245: Remove a duplicate null check and fix some typos in PoolUtils. Thanks to Bruno P. Kinoshita.
+o POOL-246: Make the toString() method of ErodingKeyedObjectPool consistent with the
+ other pools. Thanks to Bruno P. Kinoshita.
+
For complete information on Apache Commons Pool, including instructions on how to submit bug reports,
-patches, or suggestions for improvement, see the Apache Commons Pool website:
+patches, or suggestions for improvement, see the Apache Apache Commons Pool website:
http://commons.apache.org/proper/commons-pool/
Modified: release/commons/pool/binaries/README.html
==============================================================================
--- release/commons/pool/binaries/README.html (original)
+++ release/commons/pool/binaries/README.html Mon Dec 30 21:44:13 2013
@@ -1,3 +1,41 @@
+<h1>Commons POOL 2.1</h1>
+
+<p>This is the 2.1 release of commons-pool. It is available in both binary and source distributions.</p>
+
+<p><font color="red" size="+2">Note:</font>
+The tar files in the distribution use GNU tar extensions
+and must be untarred with a GNU compatible version of tar. The version
+of tar on Solaris and Mac OS X will not work with these files.</p>
+
+<a name="changes"><h2>Changes</h2></a>
+
+<p>See release notes above for details, and website below for more information.</p>
+
+<p>Thank you for using <a href="http://commons.apache.org/pool/">Commons POOL</a>,<br>
+from the Apache Commons Project <a href="http://commons.apache.org/">http://commons.apache.org/</a></p>
+
+<a name="sig"><h2>Signatures</h2></a>
+
+<p>Many of the files have been digitally signed using GnuPG. If so,
+there will be an accompanying <samp><em>file</em>.asc</samp> signature
+file in the same directory as the file (binaries/ or source/). The
+signing keys can be found in the distribution directory at <<a
+HREF="http://www.apache.org/dist/commons/KEYS"><samp>http://www.apache.org/dist/commons/KEYS</samp></a>>.</p>
+
+<p><b>Always download the KEYS file directly from the Apache site, never from a mirror site.</b></p>
+
+<pre>Always test available signatures, <i>e.g.</i>,
+$ pgpk -a KEYS
+$ pgpv commons-pool2-2.1.tar.gz.asc
+or,
+$ pgp -ka KEYS
+$ pgp commons-pool2-2.1.tar.gz.asc
+or,
+$ gpg --import KEYS
+$ gpg --verify commons-pool2-2.1.tar.gz.asc
+</pre>
+<p>
+
<h1>Commons POOL 1.6</h1>
<p>This is the 1.6 release of commons-pool. It is available in both binary and source distributions.</p>
Modified: release/commons/pool/source/README.html
==============================================================================
--- release/commons/pool/source/README.html (original)
+++ release/commons/pool/source/README.html Mon Dec 30 21:44:13 2013
@@ -1,3 +1,41 @@
+<h1>Commons POOL 2.1</h1>
+
+<p>This is the 2.1 release of commons-pool. It is available in both binary and source distributions.</p>
+
+<p><font color="red" size="+2">Note:</font>
+The tar files in the distribution use GNU tar extensions
+and must be untarred with a GNU compatible version of tar. The version
+of tar on Solaris and Mac OS X will not work with these files.</p>
+
+<a name="changes"><h2>Changes</h2></a>
+
+<p>See release notes above for details, and website below for more information.</p>
+
+<p>Thank you for using <a href="http://commons.apache.org/pool/">Commons POOL</a>,<br>
+from the Apache Commons Project <a href="http://commons.apache.org/">http://commons.apache.org/</a></p>
+
+<a name="sig"><h2>Signatures</h2></a>
+
+<p>Many of the files have been digitally signed using GnuPG. If so,
+there will be an accompanying <samp><em>file</em>.asc</samp> signature
+file in the same directory as the file (binaries/ or source/). The
+signing keys can be found in the distribution directory at <<a
+HREF="http://www.apache.org/dist/commons/KEYS"><samp>http://www.apache.org/dist/commons/KEYS</samp></a>>.</p>
+
+<p><b>Always download the KEYS file directly from the Apache site, never from a mirror site.</b></p>
+
+<pre>Always test available signatures, <i>e.g.</i>,
+$ pgpk -a KEYS
+$ pgpv commons-pool2-2.1.tar.gz.asc
+or,
+$ pgp -ka KEYS
+$ pgp commons-pool2-2.1.tar.gz.asc
+or,
+$ gpg --import KEYS
+$ gpg --verify commons-pool2-2.1.tar.gz.asc
+</pre>
+<p>
+
<h1>Commons POOL 1.6</h1>
<p>This is the 1.6 release of commons-pool. It is available in both binary and source distributions.</p>