Subject | Re: [Firebird-Java] reuse of connection after failure. |
---|---|
Author | Roman Rokytskyy |
Post date | 2007-03-14T23:51:47Z |
> I'm having a lot of trouble remembering why we won't let anyone closeLook at the stack trace:
> a connection with an active transaction. At the moment it seems to
> me that if the tx has not been prepared we should roll it back and
> close the connection, otherwise just close it and the tx will be in
> limbo.
>
> Can anyone remember why we made the decision we did? I think it made
> sense at the time :-)
Caused by: org.firebirdsql.gds.GDSException: cannot disconnect database
with open transactions (1 active)
at
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.readStatusVector(AbstractJavaGDSImpl.java:2124)
at
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.receiveResponse(AbstractJavaGDSImpl.java:2074)
at
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.iscDetachDatabase(AbstractJavaGDSImpl.java:621)
We had such code before, but I have eliminated it long time ago. So now,
it looks like it is Firebird who complains.
The question is - should we close socket anyway?
Roman