KB3020112 - 修正:在 SQL Server 2014 中執行 DML 陳述式時發生不讓步錯誤

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)

症狀

當您在包含叢集資料行存放區索引的資料表上執行資料操作語言 (DML) 陳述式時,發生這個問題。 發生此問題時,在 DMV) (動態管理檢視sys.column_store_row_groups中,您會看到許多新項目的delta_store_hobt_id欄未顯示 Null 值,且合計列欄顯示較小的數字。 您也可能會收到下列錯誤訊息:

注意

在 function = <FunctionName>::Get file = line = <LineNumber 中偵測到非讓步任務>

此外,還會產生相關的傾印檔案。

解決方式

Service Pack 資訊

要解決此問題,請取得 SQL Server 2014 的 Service Pack 1。

如需 SQL Server 2014 Service Pack 1 (SP1) 的詳細資訊,請參閱 SQL Server 2014 Service Pack 1 中修正的錯誤。

累積更新資訊

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

適用於 SQL Server 2014 的累積更新 5 /zh-tw/help/3011055

關於 SQL Server 的累積更新

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

      

更多資訊

發生此問題的原因是每個更新或刪除陳述式都會鎖定所有差異存放區。 當所有差異存放區都鎖定時,insert 陳述式會建立新的差異存放區。 此 Hotfix 會嘗試只鎖定受更新或刪除影響的差異存放區,如果已經有許多開啟的差異存放區,則較慢地建立新的差異存放區。

狀態

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