【发布时间】:2015-09-12 19:47:18
【问题描述】:
我编写了一个简单的 Java 应用程序,它基本上执行一个由 4 个连接表组成的 SELECT SQL 语句。然后我执行 SQL 语句并将其保存到resultSet。当我在 300K+ 中的 200K+ 记录上循环 resultSet 时,我收到以下错误消息:
SQLCODE=-913 SQLSTATE=57003 SQLERRMC=schema.table;表,驱动程序=4.1xxx
根据我目前所读到的内容,这意味着它是一个死锁错误。这是否可能发生在如此小的结果集(300K)和 select 语句上?
【问题讨论】:
-
你能发布你的代码吗?如果您的代码太大,请使用pastie.org
-
这是一个死锁或超时。检查原因码以确定哪个原因代码:2 = 事务分支由于死锁而失败,68 = 事务分支由于锁定超时而失败,72 = 事务由于涉及事务中涉及的 DB2 数据链接管理器的错误而回滚,80 = 语句由于超时而失败