Symptomer
Når SQL-serveren kjører en ikke-cacheable auto-parametriserte spørringer, kan spørringen produsere et brudd på tilgangstillatelse i sjeldne tilfeller. Brudd på tilgangstillatelse er registrert i SQL Server-feilloggen sammen med en kallstakk som inneholder følgende eksempel-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 Dump 000007FA0B512E2F 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) I dette eksemplet er symptomene som følger:-
En enkel spørring som har én eller flere konstanter i en WHERE-setningsdel. SQL Server kan auto-parameterisere disse konstantene.
-
Strengen "Tilgangstillatelse lesing adresse 0000000000000018". (Denne strengen som slutter på "18" på 64-biters systemer, "0C" på 32-biters systemer.)
-
Innholdet i den korte Stakkdump har samme eller lignende dybde og relative plasseringene til stakkrammer (ikke nødvendigvis et nøyaktig samsvar).
Obs! I dette eksemplet er hentet fra en 64-biters forekomsten av SQL Server. Det vil være forskjellig, men fortsatt gjenkjennelig i et eksempel fra et 32-biters-forekomst.
Informasjon om kumulativ oppdatering
Dette problemet ble først løst i den følgende kumulative oppdateringen av SQL Server.
Hver nye kumulative oppdateringen for SQL Server inneholder alle hurtigreparasjonene og alle sikkerhetsreparasjoner som fulgte med den forrige kumulative oppdateringen. Sjekk ut de nyeste kumulative oppdateringene for SQL Server:
Status
Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for".
Referanser
Lær mer om terminologien som Microsoft bruker til å beskrive oppdateringer av programvare.