You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Hassan Sajjad (JIRA)" <ji...@apache.org> on 2009/11/09 18:35:32 UTC

[jira] Commented: (POOL-151) Eviction thread is able to remove (destroy) in-flight (borrowed) objects

    [ https://issues.apache.org/jira/browse/POOL-151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12775033#action_12775033 ] 

Hassan Sajjad commented on POOL-151:
------------------------------------


I have created a simple test case that only exercise Commons-pooling library - all other dependencies such as the My App,  and JMS are removed.

I have *not* been able to reproduce the issue.

Imagine our app has the tendency of returning the same object twice under high load (1 in 100k messages). Any possible suggestion on how to stop it in the pooling layer?
Is there a specific reason for preferring List over Set for pool's data structure?


> Eviction thread is able to remove (destroy) in-flight (borrowed) objects
> ------------------------------------------------------------------------
>
>                 Key: POOL-151
>                 URL: https://issues.apache.org/jira/browse/POOL-151
>             Project: Commons Pool
>          Issue Type: Bug
>    Affects Versions: 1.5.3
>            Reporter: Hassan Sajjad
>            Priority: Blocker
>
> Under high concurrent use, the eviction thread can temper with an in-use object from the pool, potentially causing catastrophic results, as illustrate in the below log from our use. Note the object - in our case JMSSession is closed in-flight (after message send but before commit), causing the commit to fail with {{javax.jms.IllegalStateException: MQJMS1024: session closed}} error.
> {noformat}
> 2009-10-12 15:08:40,254 DEBUG [asyncDelivery59] Borrowed session com.ibm.mq.jms.MQQueueSession@40bc88 for jms connector 
> 2009-10-12 15:08:40,341 DEBUG [Timer-0] Physically closing com.ibm.mq.jms.MQQueueSession@40bc88 for connector 
> 2009-10-12 15:08:40,669 DEBUG [asyncDelivery59] Returning session com.ibm.mq.jms.MQQueueSession@40bc88 for jms conn
> ector
> 2009-10-12 15:08:40,433 ERROR [asyncDelivery59] Exception caught while committing transaction [com.ibm.mq.jms.MQQueueSession@40bc88]
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.