FIX: Out of memory error occurs when Database Node Memory (KB) drops below 2 percent in SQL Server 2014 and 2016

Applies to: Microsoft SQL Server 2014 Service Pack 2SQL Server 2014 DeveloperSQL Server 2014 Enterprise More

Symptoms


Assume that you use Microsoft SQL Server 2014 or 2016. When you check the available memory usage on NUMA nodes, you notice that the Database Node Memory (KB) is less than 2 percent of the target size. When this situation occurs, you may receive the following "Out of memory" error message:

Date/Time spid36s          Failed to allocate BUFs:FAIL_BUFFER_ALLOCATION 1


This issue occurs even if there is a plenty of memory available in SQL Server. 

Cause


An "Out of Memory" error can occur when a Database Node Memory (KB) becomes lessthan 2 percent of the target size, and it cannot discard database pages on the node anymore to get free pages.

Status


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. 

Resolution


This issue is fixed in the following cumulative updates for SQL Server:

About cumulative updates for SQL Server:
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:

Note After you apply this fix, SQL Server will be able to reclaim pages from remote buffer nodes if the number of database pages on local node drops below 2 percent of its target pages.

References


Learn about the terminology that Microsoft uses to describe software updates.