[英]In java with DB2 parallel process: I got Deadlock Exception :DB2 SQL Error: SQLCODE=-911, SQLSTATE=40001, SQLERRMC=2, DRIVER=3.59.81
[英]Java db2 error SQLCODE=-913 SQLSTATE=57003 SQLERRMC=schema.table; table, driver=4.1xxx
我編寫了一個簡單的Java應用程序,該應用程序基本上執行由4個聯接表組成的SELECT
SQL語句。 然后,我執行SQL語句並將其保存到resultSet
。 當我遍歷resultSet
,在300K +中的200K +記錄上,我收到此錯誤消息:
SQLCODE = -913 SQLSTATE = 57003 SQLERRMC = schema.table; 表,驅動程序= 4.1xxx
根據我到目前為止所讀的內容,這意味着它出現了死鎖錯誤。 是否有可能在這么小的結果集(300K)和select語句上發生這種情況?
當兩個或多個事務處於鎖定周期中等待對方時,就會發生死鎖,並且鎖定超時不會中斷該周期。 缺省情況下,在表或索引掃描期間執行行鎖定時,DB2會在確定行是否符合查詢條件之前鎖定每一行。 可能是您的表或索引掃描花費的時間太長,並且還有其他掛起的事務。
這是有關DB2鎖的精彩文檔。 http://www.ibm.com/developerworks/data/library/techarticle/dm-0509schuetz/還提供了一些有關如何解決鎖定問題的建議。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.