Microsoft distributes Microsoft SQL Server 2012 fixes in one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security updates that were included with the previous SQL Server 2012 update release.
Symptoms
Consider the following scenario:
-
You install Microsoft SQL Server 2012 on a server that has many CPUs. For example, the CPU on the server has 64 or 128 cores and includes a NUMA configuration.
-
The server has a large amount of memory. For example, the server has 256 gigabytes (GB) or 1 terabyte of memory.
-
You execute a query in Microsoft SQL Server 2012. The query execution plan contains a sort operator that applies to many rows.
In this scenario, error messages that resemble the following are logged in the SQL Server error log file:
Process <block list> appears to be non-yielding on Scheduler <ID>
Cause
This issue occurs because the sort operator traverses many buckets in an internal SQL Server list of memory allocations to find the next available memory from the buffer pool.
When the server has a large memory, the internal SQL Server list of memory allocations in the buffer pool grows to a large size also. Therefore, the sort operator traverses many buckets in the internal SQL Server list of memory allocations to find the next available memory from the buffer pool. This behavior does not yield on the scheduler frequently enough. Therefore, the "non-yielding scheduler" error is reported frequently.Resolution
Cumulative update information
Cumulative update package 1 for SQL Server 2012 Service Pack 1
The fix for this issue was first released in Cumulative Update 1. For more information about how to obtain this cumulative update package for SQL Server 2012 Service Pack 1, click the following article number to view the article in the Microsoft Knowledge Base:
2765331 Cumulative update package 1 for SQL Server 2012 Service Pack 1Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2012 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
2772858 The SQL Server 2012 builds that were released after SQL Server 2012 Service Pack 1 was released
SQL Server 2012
The fix for this issue was first released in Cumulative Update 4. For more information about how to obtain this cumulative update package for SQL Server 2012, click the following article number to view the article in the Microsoft Knowledge Base:
2758687 Cumulative update package 4 for SQL Server 2012Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2012 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
2692828 The SQL Server 2012 builds that were released after SQL Server 2012 was released
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.