KB3037624 - ИСПРАВЛЕНО: сложный параллельный запрос не отвечает в SQL Server 2012 или SQL Server 2014

Применяется к
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard 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 Web - duplicate (do not use)

Проблема

Предположим, что вы выполняете сложный параллельный запрос, для которого требуется значительное число параллельных потоков, в Microsoft SQL Server 2012 или Microsoft SQL Server 2014, и рабочие потоки исчерпаны на соответствующем планировщике. В редких случаях запрос не выполняет выполнение в течение неопределенного времени из-за необнаруженной взаимоблокировки.

Примечание. Если у других планировщиков в SQL Server есть свободные рабочие роли, ядро СУБД сможет правильно обрабатывать другие запросы.

Причина

Когда происходит нехватка рабочих потоков, конкретное ожидание между рабочими потоками не рассматривается как потенциальный блокировщик. Поэтому монитор взаимоблокировки не обнаруживает состояние. В результате запрос не отвечает. Вероятность возникновения такого условия невелика и в основном зависит от формы плана запроса, степени параллелизма и доступности рабочих потоков.

Решение

Сведения о накопительном пакете обновления

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

Рекомендация. Установите последний накопительный пакет обновления для SQL Server

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

      

Состояние

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