[
https://issues.apache.org/jira/browse/DBCP-387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mark Thomas resolved DBCP-387.
------------------------------
Resolution: Won't Fix
If there is activity on the connection then the connection hasn't been
abandoned. It would be better to address why a connection that is still in use
has been marked as abandoned. Possible causes include:
- abandoned timeout is too low
- sql statement taking too long to execute (could indicate a performance issue)
- application not returning connections to the pool between uses
> Have abandoned connection call cancel and rollback so it doesn't have to wait
> before closing
> --------------------------------------------------------------------------------------------
>
> Key: DBCP-387
> URL: https://issues.apache.org/jira/browse/DBCP-387
> Project: Commons Dbcp
> Issue Type: Improvement
> Affects Versions: 1.4
> Environment: Linux, Java 1.6
> Reporter: Michael Kerr
> Priority: Minor
> Labels: features
>
> When using BasicDataSource and enabling Abandoned the destroyObject will be
> called when a connection has been out of the pool longer than a set period of
> time.
> In testing I found that when a connection is reclaimed "destroyObject" is
> called. This call uses close to free up the connection. The problem is any
> activity on the connection will prevent the close from occuring.
> A suggestion is to cancel active statements and then close them. Then
> rollback the connection and close the connection.
> PoolableConnectionFactory
> public void destroyObject(Object obj) throws Exception {
> if(obj instanceof PoolableConnection) {
> ((PoolableConnection)obj).reallyClose();
> }
> }
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)