commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hassan Sajjad (JIRA)" <j...@apache.org>
Subject [jira] Commented: (POOL-151) Eviction thread is able to remove (destroy) in-flight (borrowed) objects
Date Tue, 13 Oct 2009 16:29:31 GMT

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

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

Another use case illustrating the closed (post eviction) object being reused / borrowed, which
subsequently failed due to the prior action from the evictor.

{noformat}
2009-10-13 14:52:14,407 DEBUG [asyncDelivery51] Returning session com.ibm.mq.jms.MQQueueSession@1902242
for jms connector 
2009-10-13 14:52:14,875 DEBUG [Timer-0] Physically closing com.ibm.mq.jms.MQQueueSession@1902242
for connector 
2009-10-13 14:52:14,876 DEBUG [asyncDelivery64] Borrowed session com.ibm.mq.jms.MQQueueSession@1902242
for jms connector 
2009-10-13 14:52:14,931 FATAL [asyncDelivery64] Failed to dispatch message [javax.jms.IllegalStateException:
MQJMS1024: session closed]
{noformat}

In the above log, thread id [asyncDelivery51] represents the last request that processed OK
and object was returned successfully after event completion. Thread id [asyncDelivery64] failed
because of this issue.


> 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.


Mime
View raw message