[ https://issues.apache.org/jira/browse/POOL-327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16054505#comment-16054505 ]
Gary Gregory commented on POOL-327: ----------------------------------- [~psteitz]: Any thoughts on the best way forward? > GKOP: returnObject does not unblock threads waiting in borrowObject if > maxIdle=0 > -------------------------------------------------------------------------------- > > Key: POOL-327 > URL: https://issues.apache.org/jira/browse/POOL-327 > Project: Commons Pool > Issue Type: Bug > Affects Versions: 2.4.2 > Reporter: Paul Pazderski > Priority: Minor > Attachments: 327-maxIdle0-alternativ.patch, 327-maxIdle0.patch, > 327-maxIdle0-test.patch > > > If idle objects are disabled by maxIdle=0 a thread blocked in borrowObject is > not notified if another thread returns an object. > Attached is a unit test (327-maxIdle0-test.patch) that demonstrates the > issue. I tried a similar test on GenericKeyedObjectPool as well which not > seems to be affected by this issue. > I also attached two possible solutions for this issue. > The first (327-maxIdle0.patch) just notifies a potentially waiting thread in > the affected returnObject code branch. (similar to POOL-240) > The second (327-maxIdle0-alternativ.patch) checks for waiting threads every > time an object get destroyed. But this may introduce undesired behavior in > other functions. (like clear or evict) -- This message was sent by Atlassian JIRA (v6.4.14#64029)