KB4057055 — ИСПРАВЛЕНО: при выполнении параллельного запроса к кластеризованному индексу columnstore в SQL Server 2016 и 2017 возникает взаимоблокировка

Применяется к
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Проблема

Рассмотрим следующий сценарий.

  • Вы выполняете запрос в Microsoft SQL Server 2016 и 2017.
  • Полученный план запроса содержит ветвь пакетного режима и ветвь режима строки, участвующие в JOIN.
  • В ветви строкового режима есть параллельные и последовательные операторы.

В этом случае может возникнуть состояние взаимоблокировки.

Примечание. Эта проблема не возникает, если для запроса задана максимальная степень параллелизма (MAXDOP) равная 1 .

Решение

Эта проблема устранена в следующих накопительных обновлениях для SQL Server:

Накопительный пакет обновления 4 для SQL Server 2017

Накопительный пакет обновления 7 для SQL Server 2016 с пакетом обновления 1 (SP1)

Примечание Для решения этой проблемы необходимо включить флаг трассировки (TF) 4199 оптимизатора запросов.

Дополнительные сведения об исправлениях оптимизатора запросов и флагах трассировки см. в следующих статьях:

Исправление оптимизатора запросов SQL Server Модель обслуживания TF 4199

Консольные команды DBCC и флаги трассировки

Сведения о накопительных обновлениях для SQL Server:

Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:

Последний накопительный пакет обновления для SQL Server 2017

Последний накопительный пакет обновления для SQL Server 2016

Состояние

Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».

Ссылки

Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.