我正在嘗試調查客戶端網站的性能問題。我瀏覽了網站的封鎖數據,並在一段時間內提出了幾個SPID進行調查。然後,我查看了sys.syslockinfo中的數據,發現其中一個問題SPID在Intent Exclusive Table鎖上有WAIT。我試圖找到阻塞的SPID,但在WAIT之前的一段似乎合理的時間段內找不到任何GRANT鎖。沒有相應GRANT的等待鎖
是否有任何理由,它可能不得不等待,即使沒有其他會話表被鎖定? sys.syslockinfo中的任何已知錯誤?
我必須檢查鎖定信息的抓取方式 - 它可能是每15秒鐘一次的事情,在這種情況下,GRANT可能沒有被捕獲。同時,如果有人知道另一個潛在的原因,我會非常感謝您的洞察力。
謝謝!
我在查看包含sys.syslockinfo快照的日誌表。我希望在任何時候,如果在資源上有一個WAIT類型的行,那裏還應該有另一個(至少一個)行,並且引起第一個會話的會話具有GRANT類型必須等待。說實話,我不知道情況是否如此。這就是我認爲世界應該如何工作的原因:) – 2010-09-20 19:04:49
大多數DMV不能提供連貫的快照,因爲他們從不「凍結」系統來轉儲信息。總是有可能看到沒有相應的GRANT的WAIT(即在等待信息行產生的時候GRANT在那裏,但在DMV達到它在輸出中的'位置'時已經消失了)。但這應該是例外,而不是規則。如果你始終看到這一點,我的第一個懷疑就會轉向審查員的眼睛,因爲在衝突的格蘭特在那裏,但錯過了。你能共享一個採樣的syslockinfo顯示異常嗎? – 2010-09-20 19:15:32