Проблема
Предположим, что вы используете Microsoft SQL Server 2014 или 2016. При проверке доступного использования памяти на узлах NUMA вы заметите, что объем памяти узла базы данных (KB) составляет менее 2 процентов от целевого размера. В этом случае может появиться следующее сообщение об ошибке "Недостаточно памяти":
Date/Time spid36s Не удалось выделить BUF:FAIL_BUFFER_ALLOCATION 1
Эта проблема возникает, даже если в SQL Server доступно много памяти.
Причина
Ошибка «Недостаточно памяти» может возникнуть, когда объем памяти узла базы данных (KB) становится менее 2 процентов от целевого размера, и он больше не может сбрасывать страницы базы данных на узле, чтобы получить свободные страницы.
Состояние
Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».
Решение
Эта проблема устранена в следующих накопительных обновлениях для SQL Server:
Накопительный пакет обновления 5 для SQL Server 2016 с пакетом обновления 2 (SP2)
Накопительный пакет обновления 15 для SQL Server 2014 с пакетом обновления 2 (SP2)
Сведения о накопительных обновлениях для SQL Server:
Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:
Последний накопительный пакет обновления для SQL Server 2016
Последний накопительный пакет обновления для SQL Server 2014
Примечание После применения этого исправления SQL Server сможет высвобождать страницы с удаленных буферных узлов, если количество страниц базы данных на локальном узле падает ниже 2 процентов от числа целевых страниц.
Ссылки
Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.