事务超时问题,因为DB被锁定

时间:2014-03-03 04:51:04

标签: java atomikos

我们有两个数据库,一个是master,另一个是slave。我们在数据库中放置了2个锁,为了使它们同步,我们在它上面放置一个独占锁。

现在的问题是,更新主数据库表中的行时,计时器已过期。由于这个问题,主表锁已经死了,我们仍然在从表中有一个锁,在两个表中都有独占锁。因此,我们无法更新表中的行。 我们不知道为什么主数据库中的锁死了,而且全局锁还没有释放该行。

我尝试了setReapTimeout()方法。它也没有用。有人可以帮忙......

Atomikos错误:

javax.transaction.xa.XAException: java.sql.SQLException: System or internal error
    at com.informix.jdbcx.IfxXAResource.end(IfxXAResource.java:125)
    at com.atomikos.datasource.xa.XAResourceTransaction.suspend(XAResourceTransaction.java:611)
    at com.atomikos.datasource.xa.XAResourceTransaction.rollback(XAResourceTransaction.java:864)
    at com.atomikos.icatch.imp.RollbackMessage.send(RollbackMessage.java:90)
    at com.atomikos.icatch.imp.PropagationMessage.submit(PropagationMessage.java:86)
    at com.atomikos.icatch.imp.Propagator$PropagatorThread.run(Propagator.java:62)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)

0 个答案:

没有答案