Release notes for Commons-Pool 1.1

There were a lot changes since the 1.0.1 release on 12 Aug 2002.

  • A lot of corner cases were fixed


  • Performance improvement by optimizing pool synchronization, the critical code paths were optimized by reducing pool synchronization but we also added more synchronization where needed


  • New minIdle feature: the minimum number of objects allowed in the pool before the evictor thread (if active) spawns new objects. (Note no objects are created when: numActive + numIdle >= maxActive)


  • New maxTotal feature: a cap on the total number of instances controlled by a pool. Only for GenericKeyedObjectPool where maxActive is a cap on the number of active instances from the pool (per key).


  • UML Class and sequence diagrams


  • The following issues were resolved since v1.0.1: (see Bugzilla for complete description)
    IDDateSevStateSummary
    128402002-10-31EnhFIXEFactor out syncronized block Evictor code to method
    128412002-10-30NorFIXEGenericObjectPool unused variable and unused synchronized block
    131282002-10-30MajDUPLGenericKeyedObjectPool: _activeMap.get(key) increment is not balanced with decrements
    136492002-10-29NorFIXEGenericObjectPool: Negative _maxActive doesn't allow growth
    137052002-10-30NorFIXEAdd invalidateObject() method to ObjectPool
    149702002-11-30NorFIXEPassing null for Stack[Keyed]ObjectPool factory causes NullPointerException
    149812003-04-24NorFIXEgetNumActive() count is wrong when returnObject() is used to pre-populate StackObjectPool
    149822003-03-05EnhFIXEGenericObjectPool does not work with null factory.
    149832003-03-14EnhFIXEGenericObjectPool should allow for manual population of the pool
    179312003-03-13MinFIXEPatch to update the javadocs for StackObjectPool
    179622003-03-13NorFIXEMisc javadoc updates and clean up for GenericKeyedObjectPool
    179632003-03-13EnhFIXEGeneral cleanup in GenericObjectPool
    179682003-03-13EnhFIXEAllow zero idle objects in GenericObjectPool
    179692003-03-13NorFIXEAdditional javadocs for StackKeyedObjectPool
    179902003-04-18MajFIXELeaking DB connections - synch problem in GenericKeyedObject
    180622003-04-18CriFIXEborrowObject/validation infinite loop and deadlock issue in
    186172003-04-07MinFIXEDelegatingPreparedStatement throws misleading exception
    191922003-04-22EnhFIXEover agressive synchronize causing performance problem
    218382003-08-11EnhFIXEWeird HTML makes the pool example doc hard to read
    225972003-08-21EnhFIXEminIdle Functionality
    230602003-09-20CriFIXEPool not available for download