Use 2.2 beta 's FBConnectionPoolDataSource() . I get ConcurrentModificationException when close a connection (jdbcConnection.close())
java.util.ConcurrentModificationException
at java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:761)
at java.util.LinkedList$ListItr.remove(LinkedList.java:729)
at org.firebirdsql.ds.PooledConnectionHandler.closeStatements(PooledConnectionHandler.java:251)
at org.firebirdsql.ds.PooledConnectionHandler.handleClose(PooledConnectionHandler.java:161)
at org.firebirdsql.ds.PooledConnectionHandler.invoke(PooledConnectionHandler.java:109)
at $Proxy0.close(Unknown Source)
A statementhandler would remove itself on close, causing the ConcurrentModificationException. Changed code to make a copy of the list to iterate over.
Added two tests to cover this case: one when the connection is closed by the caller, and one where the connection is closed by the pool (eg on obtaining a new connection from the same PooledConnection.
Will review tests for classes in org.firebirdsql.ds to see if I missed other testcases.
Submitted by: Chiiwen Liou (i928)
Use 2.2 beta 's FBConnectionPoolDataSource() . I get ConcurrentModificationException when close a connection (jdbcConnection.close())
java.util.ConcurrentModificationException
at java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:761)
at java.util.LinkedList$ListItr.remove(LinkedList.java:729)
at org.firebirdsql.ds.PooledConnectionHandler.closeStatements(PooledConnectionHandler.java:251)
at org.firebirdsql.ds.PooledConnectionHandler.handleClose(PooledConnectionHandler.java:161)
at org.firebirdsql.ds.PooledConnectionHandler.invoke(PooledConnectionHandler.java:109)
at $Proxy0.close(Unknown Source)
Commits: 6862469 e0fae4e
The text was updated successfully, but these errors were encountered: