Damian,

 I would be more than happy to help but you came with the solution :)
 My "fix" was to do a "select top 1 * from "+tableName on
the com.hp.hpl.jena.sdb.sql.TableUtils::hasTable() . Maybe the jtds driver
 have some issues pulling info from
the connection.getMetaData().getTables().

 The deadlock was reported but I don't have a fix yet and so far is not
reproducible anymore. Also some concurrency fixes were done in the
Application
 that I presume is related to the deadlock.

 Thank you Damian!
 If you need more information please let me know,

Regards,

 Adrian


[5/14/12 10:01:28:374 MDT] 00000088 LoaderTuplesN E
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes$Commiter handleIssue Error in
thread: Exception flushing
                                 java.sql.SQLException: Transaction
(Process ID 72) was deadlocked on lock resources with another process and
has been chosen as the deadlock victim. Rerun the transaction.
at
net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:368)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258)
at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:632)
at
net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:584)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:546)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:723)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1166)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1119)
at
net.sourceforge.jtds.jdbcx.proxy.StatementProxy.executeUpdate(StatementProxy.java:69)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.pmiExecuteUpdate(WSJdbcStatement.java:1693)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.executeUpdate(WSJdbcStatement.java:1041)
at com.hp.hpl.jena.sdb.sql.SDBConnection.execUpdate(SDBConnection.java:153)
at
com.hp.hpl.jena.sdb.layout2.TupleLoaderBase.flush(TupleLoaderBase.java:202)
at
com.hp.hpl.jena.sdb.layout2.TupleLoaderBase.finish(TupleLoaderBase.java:155)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes.commitTuples(LoaderTuplesNodes.java:283)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes.access$1(LoaderTuplesNodes.java:280)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes$Commiter.run(LoaderTuplesNodes.java:318)
at java.lang.Thread.run(Thread.java:735)
com.hp.hpl.jena.sdb.SDBException: Exception flushing
at
com.hp.hpl.jena.sdb.layout2.TupleLoaderBase.flush(TupleLoaderBase.java:220)
at
com.hp.hpl.jena.sdb.layout2.TupleLoaderBase.finish(TupleLoaderBase.java:155)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes.commitTuples(LoaderTuplesNodes.java:283)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes.access$1(LoaderTuplesNodes.java:280)
at
com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes$Commiter.run(LoaderTuplesNodes.java:318)
at java.lang.Thread.run(Thread.java:735)
Caused by: java.sql.SQLException: Transaction (Process ID 72) was
deadlocked on lock resources with another process and has been chosen as
the deadlock victim. Rerun the transaction.
at
net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:368)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258)
at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:632)
at
net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:584)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:546)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:723)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1166)
at
net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1119)
at
net.sourceforge.jtds.jdbcx.proxy.StatementProxy.executeUpdate(StatementProxy.java:69)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.pmiExecuteUpdate(WSJdbcStatement.java:1693)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.executeUpdate(WSJdbcStatement.java:1041)
at com.hp.hpl.jena.sdb.sql.SDBConnection.execUpdate(SDBConnection.java:153)
at
com.hp.hpl.jena.sdb.layout2.TupleLoaderBase.flush(TupleLoaderBase.java:202)
... 5 more



On Wed, May 16, 2012 at 10:41 PM, Damian Steer <[email protected]>wrote:

>
> On 16 May 2012, at 14:12, Adrian Paleacu wrote:
>
> > Damian,
>
> Hi Adrian,
>
> > It worked okay. Sorry my hot deploy on websphere is not working all the
> > time.
> > I guess the connection.getMetaData() is not working all the time with
> jtds
> > driver.
>
> So could you explain how you fixed your issues? You had a deadlock, then
> an existing temp table issue as I recall. Any fixes you'd suggest we apply?
>
> Thanks,
>
> Damian

Reply via email to