Subject Active Transaction in Autocommit-Mode ?
Author Carsten Schäfer
I'm using Firebird 1.0.3 with Jaybird 1.0.1 on WinXPSP1.
I'm getting the following exception:
java.lang.IllegalStateException: Can't destroy managed connection  with active transaction
 at org.firebirdsql.jca.FBManagedConnection.destroy(
 at org.firebirdsql.jca.FBStandAloneConnectionManager.connectionClosed(
 at org.firebirdsql.jca.FBManagedConnection$1.notify(
 at org.firebirdsql.jca.FBManagedConnection.notify(
 at org.firebirdsql.jca.FBManagedConnection.close(
 at org.firebirdsql.jdbc.FBConnection.close(
 at com.TTC_Informatik.PAULA.server.App_Server.abmelden(
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
 at sun.rmi.transport.Transport$ Source)
 at Method)
 at sun.rmi.transport.Transport.serviceCall(Unknown Source)
 at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
 at sun.rmi.transport.tcp.TCPTransport$ Source)
 at Source)
when closing a connection.
My problem: this connection is only used in autocommit mode (only read-connection), so i thought i don't have to commit explicit.
I think this only happens when i use the same connection from different threads (but with no other sql-error).
After that error occurs i see with gstat that oldest transaction and oldest active are not moving any more only next transaction is moving, even when i call commit after i catch the exception and then close the connection.
Why is this happening ?