You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Phil Steitz (JIRA)" <ji...@apache.org> on 2008/01/07 03:40:34 UTC
[jira] Resolved: (POOL-120) maxActive can be exceeded by one
[ https://issues.apache.org/jira/browse/POOL-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phil Steitz resolved POOL-120.
------------------------------
Resolution: Fixed
Fixed in r609487 by restoring synchronization to addObject.
> maxActive can be exceeded by one
> --------------------------------
>
> Key: POOL-120
> URL: https://issues.apache.org/jira/browse/POOL-120
> Project: Commons Pool
> Issue Type: Bug
> Affects Versions: 1.2
> Reporter: Phil Steitz
> Priority: Blocker
> Fix For: 1.4
>
>
> For GenericObjectPool, when numIdle > 0 and the idle object evictor is set to run (timeBetweenEvictionRunsMillis > 0), a race condition can occur between the Evictor and a borrowing thread, wherein the Evictor initiates a makeObject in ensureMinIdle and before the newly created object is placed in the pool, the borrowing thread initiates another makeObject that makes the number of instances in circulation = maxActive + 1.
> This issue does not affect pool 1.3, since addObject is syncrhonized in that version. It does affect 1.4-RC1 (unreleased snapshot) and the code currently in the 1.4 release branch.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.