Subject Hunting Down Deadlock Exceptions
Author Robert DiFalco
Anyone have a good strategy for hunting down deadlock exceptions from
Java? I'd like to know what particular table/record the deadlock is
occurring on. The exception does not provide much info:

Caused by: org.firebirdsql.jdbc.FBSQLException: GDS Exception.
335544336. deadlock
at
org.firebirdsql.jdbc.AbstractPreparedStatement.internalExecute(AbstractP
reparedStatement.java:503)
at
org.firebirdsql.jdbc.AbstractPreparedStatement.execute(AbstractPreparedS
tatement.java:431)
at
com.tripwire.space.core.persistence.db.CachedPreparedStatement.execute(C
onnectionPool.java:1211)
at
com.tripwire.space.core.persistence.db.StatementValues.execute(Statement
Values.java:65)
at
com.tripwire.space.core.persistence.db.DatabaseProxy.execute(DatabasePro
xy.java:86)
... 17 more

I don't see anything in the ibserver.log exception some of these:

SQUID (Server) Wed Dec 01 11:27:48 2004
INET/inet_error: read errno = 10054

Which I assume is due to my machine being so overtaxed. Anyway, if I
knew where the deadlock was occurring, I could program around it.

R.