KB4497701 . ИСПРАВЛЕНИЕ. Pushdown фильтра Columnstore может возвращать неправильные результаты при переполнении выражений фильтра в SQL Server 2014, 2016 и 2017

Применяется к
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Service Pack 2 SQL Server 2016 Service Pack 1 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 2017 Developer Windows SQL Server 2017 Enterprise Windows SQL Server 2017 Enterprise Core Windows SQL Server 2017 Standard Windows SQL Server 2017 Developer Linux SQL Server 2017 Enterprise Linux SQL Server 2017 Enterprise Core Linux SQL Server 2017 Standard Linux

Проблема

Предположим, что вы выполняете запрос с предложением WHERE или HAVING к таблице с индексом columnstore в Microsoft SQL Server 2014, 2016 и 2017.

Если произошли все перечисленные ниже действия.

  • Фильтр был отправлен вниз к индексу columnstore.
  • Ошибка при переполнении отключена путем установки параметра ARITHABORT и ANSI_WARNINGS значение OFF.
  • В выражениях фильтра возникает переполнение.

В этом случае запрос может вернуть неправильные результаты.

Состояние

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

Решение

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

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

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

Ссылки

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