KB3167394 - 修正:安裝已過時的 SQL Server 2014 SP1 累積更新 6 後,發生意外封鎖或鎖死

Applies To
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Web - duplicate (do not use)

症狀

假設您安裝了原始發行且現已淘汰的 SQL Server 2014 Service Pack 1 (SP1 累積更新 6,) (組建編號為 12.0.4449.0、KB 3144524) ,而且您執行的工作負載模式包括平行 SELECT (...) WITH NOLOCK,在預設SQL Server鎖定型隔離等級或更高等級下。 在此情況下,您可能會遇到遇到封鎖或鎖死的查詢。 

此封鎖問題公開的模式如下:

  • 在預設的 SQL Server 鎖定型隔離等級或更高版本下,執行平行處理的 SELECT (...) INTO TABLE FROM SourceTable 陳述式,特別是使用 NOLOCK 提示。 在此案例中,將會封鎖其他嘗試存取 SourceTable 的查詢。
  • 當一個交易持有物件的獨佔鎖定時 (例如,進行中的資料表更新) ,另一個交易正在使用 NOLOCK 提示執行平行處理的 SELECT (...) FROM SourceTable。 在此案例中,將會封鎖嘗試存取 SourceTable 的 SELECT 查詢。

若要尋找您已安裝的 SQL Server 目前版本,請參閱如何判斷 SQL Server 及其元件的版本、版次和更新層級。

解決方式

此問題已先在下列 SQL Server 累積更新中修正:

SQL Server 2014 Service Pack 1 的累積更新 6
      

關於 SQL Server 的累積更新

SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:

適用於 SQL Server 2014 的最新累積更新
      

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。

參考資料

瞭解 Microsoft 用來說明軟體更新的 術語 。