[ 
https://issues.apache.org/jira/browse/DERBY-3675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12597869#action_12597869
 ] 

Trejkaz commented on DERBY-3675:
--------------------------------

Not in our own code, but the connection pool manager does remove the listener 
like this:

private class PoolConnectionEventListener implements ConnectionEventListener {
    public void connectionClosed (ConnectionEvent event) {
        PooledConnection pconn = (PooledConnection) event.getSource();
        pconn.removeConnectionEventListener(this);
        recycleConnection(pconn);
    }
    public void connectionErrorOccurred (ConnectionEvent event) {
        PooledConnection pconn = (PooledConnection) event.getSource();
        pconn.removeConnectionEventListener (this);
        disposeConnection(pconn);
    }
}

And then it reattaches it when it gives the connection out again.


> ConcurrentModificationException on closing pooled connection
> ------------------------------------------------------------
>
>                 Key: DERBY-3675
>                 URL: https://issues.apache.org/jira/browse/DERBY-3675
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>    Affects Versions: 10.4.1.3
>            Reporter: Trejkaz
>
> I'm seeing the following exception from calling close() on a connection 
> returned from a CollectionPoolDataSource.
> java.util.ConcurrentModificationException
>       at 
> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
>       at java.util.AbstractList$Itr.next(AbstractList.java:343)
>       at 
> org.apache.derby.client.ClientPooledConnection.recycleConnection(ClientPooledConnection.java:343)
>       at 
> org.apache.derby.client.am.LogicalConnection.close(LogicalConnection.java:83)
> The only particularly unique thing about the area of the code where we're 
> doing this is that we're closing it immediately after opening it, as an 
> initial check to make sure it can connect.

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

Reply via email to