症狀
當您在記憶體不足的電腦上同時執行 Microsoft SQL Server 2017 和 2019 中的許多叢集資料行存放區大量插入時,可能會收到記憶體授與逾時錯誤。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
其他資訊
資料行存放區大量插入查詢可能需要大量記憶體來供資料行存放區插入運算子和查詢中任何其他消耗記憶體的運算子使用,例如排序。
根據預設,SQL Server 會等候 25 秒,以取得記憶體授與。 如果大量插入仍然無法取得必要的記憶體,它會回復到涓流插入,以確保查詢可以繼續進行。 (如需涓流插入的詳細資訊,請參閱 資料行存放區索引 - 資料載入指引) 。
不過,只有當目前資源集區中具有記憶體授與的作用中階段作業數目小於與邏輯核心數目成正比的特定閾值時,才會發生這種情況。 如果這類並行工作階段的數目太高,大量插入查詢可能會失敗,並在 25 秒之後產生記憶體授與逾時錯誤。 這可能會對資料載入應用程式造成意外問題。 此更新會變更大量插入等候記憶體授與的方式。 插入現在會使用逾時值,其計算方式類似於任何其他類型的查詢。
解決方式
此問題已在下列 SQL Server 累積更新中修正:
關於 SQL Server 的累積更新:
SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:
參考資料
了解 Microsoft 用來說明軟體更新的術語。