FIX: Error messages are logged when you execute a non-cacheable auto-parameterized query in SQL Server 2012 or 2014

Symptoms
When SQL Server is running a non-cacheable auto-parameterized query, the query may produce an access violation under rare conditions. The access violation is recorded in the SQL Server error log together with a call stack that contains the following example fragment:

***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0010.txtSqlDumpExceptionHandler: Process #### generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.* ********************************************************************************* BEGIN STACK DUMP:*  date time spid #*** Exception Address = 000007FA0B512E2F Module(sqllang+0000000000E72E2F)* Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION* Access Violation occurred reading address 0000000000000018** Input Buffer ### bytes -* select identifier, registration_date, model, digit, place, failure, address,  * remote_control, phone_number, state, location, updated, mta, * home_id, vod_address, observations  * from equipment with(nolock) * where branch_group = 1 and equipment_type = 2 * and series = 'SERIES_AAA'*  * ******************************************************************************** -------------------------------------------------------------------------------* Short Stack Dump000007FA0B512E2F Module(sqllang+0000000000E72E2F)000007FA0B57D7D2 Module(sqllang+0000000000EDD7D2)000007FA0A74788B Module(sqllang+00000000000A788B)000007FA0A746B5C Module(sqllang+00000000000A6B5C)000007FA0A747034 Module(sqllang+00000000000A7034)000007FA0A746F8C Module(sqllang+00000000000A6F8C)000007FA0A6C9851 Module(sqllang+0000000000029851)000007FA0AB5CF5C Module(sqllang+00000000004BCF5C)000007FA0AB54397 Module(sqllang+00000000004B4397)000007FA09990430 Module(sqldk+0000000000010430)000007FA09990214 Module(sqldk+0000000000010214)000007FA0998FEF7 Module(sqldk+000000000000FEF7)000007FA099AF15F Module(sqldk+000000000002F15F)000007FA099AF1E0 Module(sqldk+000000000002F1E0)000007FA099AE70E Module(sqldk+000000000002E70E)000007FA099AEFB9 Module(sqldk+000000000002EFB9)000007FA17411832 Module(KERNEL32+0000000000001832)000007FA19B1D609 Module(ntdll+000000000005D609)

In this example, the symptoms are as follows: 
  • A simple query that has one or more constants in its WHERE clause. SQL Server may auto-parameterize these constants.
  • The "Access Violation occurred reading address 0000000000000018" string. (This string ends in "18" on 64-bit systems, "0C" on 32-bit systems.)
  • The contents of the short stack dump will have the same or similar depth and relative positions of stack frames (not necessarily an exact match).

    Note This example is taken from a 64-bit instance of SQL Server. It will be different but still recognizable in an example from a 32-bit instance.

Cumulative Update information

This issue was first fixed in the following cumulative update of SQL Server.
Recommendation: Install the latest cumulative update 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:
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
References
Learn about the terminology that Microsoft uses to describe software updates.
Свойства

ИД на статията: 3068703 – Последен преглед: 09/02/2015 19:14:00 – Редакция: 4.0

Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2014 Service Pack 1, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbqfe kbsurveynew kbfix kbexpertiseinter KB3068703
Обратна връзка