Subject | Firebird finalizer |
---|---|
Author | Kanka sumatra |
Post date | 2009-07-22T23:43:54Z |
My application which is using Firebird classic (2.1.1) hangs.
There are multiple threads spawned off and all of them do inserts and
reads and return except for one. On viewing the threads via jconsole it
seems to be blocked on firebird's finalizer. The jconsole output is listed
below. Can anyone throw some light on this please?
We are using hibernate and spring and I do not see any open connections
issue.
Thanks in advance.
Jconsole o/p:
--------------------------------
Name: Finalizer
State: RUNNABLE
Total blocked: 528 Total waited: 147
Stack trace:
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(Unknown Source)
org.firebirdsql.gds.impl.wire.XdrInputStream.read(XdrInputStream.java:242)
org.firebirdsql.gds.impl.wire.XdrInputStream.readInt(XdrInputStream.java:187)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.nextOperation(AbstractJavaGDSI\
mpl.java:2099)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.receiveResponse(AbstractJavaGD\
SImpl.java:2053)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.iscDsqlFreeStatement(AbstractJ\
avaGDSImpl.java:1405)
- locked org.firebirdsql.gds.impl.wire.isc_db_handle_impl@c9d6ed
org.firebirdsql.gds.impl.GDSHelper.closeStatement(GDSHelper.java:314)
org.firebirdsql.jdbc.AbstractStatement.close(AbstractStatement.java:326)
- locked org.firebirdsql.jdbc.FBPreparedStatement@599060
org.firebirdsql.jdbc.AbstractStatement.finalize(AbstractStatement.java:192)
java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
java.lang.ref.Finalizer.runFinalizer(Unknown Source)
java.lang.ref.Finalizer.access$100(Unknown Source)
java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
--------------------------------
[Non-text portions of this message have been removed]
There are multiple threads spawned off and all of them do inserts and
reads and return except for one. On viewing the threads via jconsole it
seems to be blocked on firebird's finalizer. The jconsole output is listed
below. Can anyone throw some light on this please?
We are using hibernate and spring and I do not see any open connections
issue.
Thanks in advance.
Jconsole o/p:
--------------------------------
Name: Finalizer
State: RUNNABLE
Total blocked: 528 Total waited: 147
Stack trace:
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(Unknown Source)
org.firebirdsql.gds.impl.wire.XdrInputStream.read(XdrInputStream.java:242)
org.firebirdsql.gds.impl.wire.XdrInputStream.readInt(XdrInputStream.java:187)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.nextOperation(AbstractJavaGDSI\
mpl.java:2099)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.receiveResponse(AbstractJavaGD\
SImpl.java:2053)
org.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.iscDsqlFreeStatement(AbstractJ\
avaGDSImpl.java:1405)
- locked org.firebirdsql.gds.impl.wire.isc_db_handle_impl@c9d6ed
org.firebirdsql.gds.impl.GDSHelper.closeStatement(GDSHelper.java:314)
org.firebirdsql.jdbc.AbstractStatement.close(AbstractStatement.java:326)
- locked org.firebirdsql.jdbc.FBPreparedStatement@599060
org.firebirdsql.jdbc.AbstractStatement.finalize(AbstractStatement.java:192)
java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
java.lang.ref.Finalizer.runFinalizer(Unknown Source)
java.lang.ref.Finalizer.access$100(Unknown Source)
java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
--------------------------------
[Non-text portions of this message have been removed]