This is a long overdue maintence release of the Pool 1.x branch. This should be a drop in upgrade for anyone using Pool 1.2.
Dependency on Commons Collections has been removed. Pool 1.3 has no requirements other than a 1.3 JVM.
Thanks to an audit by Mayur Naik many potential synchronizations issues have been fixed.
GenericObjectPool and GenericKeyedObjectPool were incorrectly implemented as a LIFO (stack) as opposed to a FIFO as documented. This has been fixed.
The PoolUtils class with a number static decorator methods has been added.
The following issues were resolved since v1.2: (see Bugzilla for complete description)
| ID | Date | Sev | State | Summary |
|---|---|---|---|---|
| 27493 | 2004-11-17 | enh | FIXE | GenericKeyedObjectPool: maxTotal limit enhancement |
| 28619 | 2004-11-17 | enh | FIXE | GenericObjectPool: Swallowed Exception |
| 29863 | 2004-11-17 | nor | FIXE | GenericObjectPool.setMaxActive(0) allows an infinite numb... |
| 29912 | 2004-11-17 | nor | FIXE | [pool] Compilation under 1.5: enum keyword |
| 30426 | 2004-11-17 | enh | FIXE | [pool] need property for removing objects above min |
| 31298 | 2004-11-17 | nor | FIXE | setMinIdle feature implemented for GenericKeyedObjectPool |
| 34902 | 2005-05-16 | nor | FIXE | [pool] StackObjectPool.releaseObject(...) has silly behav... |
| 34934 | 2005-05-16 | tri | FIXE | [pool] clean up some JavaDoc warnings |
| 34935 | 2005-05-16 | enh | FIXE | [pool] changes the borrowObject method so it advoids catc... |
| 34296 | 2005-05-16 | maj | FIXE | [pool] Potential pool leak if _factory.makeObject() throw... |
| 37226 | 2005-10-26 | maj | FIXE | [pool] synchronization issues in StackObjectPool |
| 37227 | 2005-10-26 | maj | FIXE | [pool] synchronization issues in GenericObjectPool |
| 37228 | 2005-10-27 | maj | FIXE | [pool] synchronization issues in SoftReferenceObjectPool |
| 37234 | 2005-10-27 | maj | FIXE | [pool] synchronization issues in GenericKeyedObjectPool |
| 37235 | 2005-10-27 | maj | FIXE | [pool] synchronization issues in StackKeyedObjectPool |
| 36719 | 2005-10-29 | maj | FIXE | [pool] Some ObjectPool.borrowObject() implementations do ... |
| 33264 | 2005-10-29 | nor | FIXE | [pool] GenericObjectPool is a LIFO, not a FIFO implementa... |
| 36904 | 2005-10-29 | nor | FIXE | [pool] GenericKeyedObjectPool is a LIFO, not a FIFO imple... |
| 37428 | 2005-11-10 | enh | FIXE | [pool] patch to remove GenericObjectPool's dep on Cursora... |
| 37431 | 2005-11-10 | enh | FIXE | [pool] patch to remove GenericKeyedObjectPool's dep on Cu... |
| 37321 | 2005-11-16 | min | FIXE | [pool] GenericObjectPool.Evictor._cancelled should to be ... |
| 37153 | 2006-02-06 | enh | WORK | [pool] patch to use non-deprecated CursorableLinkedList f... |
| 38540 | 2006-02-06 | nor | DUPL | [pool] Remove the use of the deprecated collections class... |
| 38541 | 2006-02-07 | enh | WORK | [pool] Take into account the minIdle in the GenericObject... |
| 37109 | 2006-02-10 | enh | FIXE | [Pool] Improvements to maven build |
| 30305 | 2006-02-11 | enh | LATE | [pool] GenericKeyedObjectPool raises exception while dest... |
| 33949 | 2006-02-11 | enh | WONT | [pool] genericKeyedObjectPool.borrowObject() calls activa... |
| 31900 | 2006-02-11 | nor | FIXE | [pool] GenericObjectPool: TestWhileIdle is mutually exclu... |
| 37337 | 2006-02-12 | min | FIXE | [pool] GenericObjectPool WHEN_EXHAUSTED_BLOCK behvior cou... |
| 35617 | 2006-02-12 | maj | FIXE | [pool]NumActive goes to negative when the pool can't crea... |
| 38625 | 2006-02-14 | enh | FIXE | [pool] GenericObjectPool currently in SVN isn't Java 1.3 ... |
| 33265 | 2006-02-14 | min | FIXE | [pool] Number of tested objects in eviction runs of Gener... |
| 36581 | 2006-02-14 | enh | FIXE | [pool] GenericObjectPool Evictor should be a TimerTask, n... |
| 35543 | 2006-02-14 | min | FIXE | [pool][patch] Docs lie: not maxTotal negative for no limi... |
| 38649 | 2006-02-18 | enh | FIXE | [pool] Generic[Keyed]ObjectPool.ObjectTimestampPair can b... |
| 38690 | 2006-02-18 | min | FIXE | [pool] BaseObjectPool closed boolean field needs to be vo... |
| 38746 | 2006-02-22 | enh | FIXE | [pool] indicate that ObjectPools.addObject may throw an U... |
| 38856 | 2006-03-06 | maj | DUPL | [pool] Killed user connection causes the setautocomit to ... |