Symptomer
Når du bruger den afstandslige datatype og tilknyttede metoder i Microsoft SQL Server 2012 eller Microsoft SQL Sever 2014, er SQLOS-planlægningsprogrammet (SQL Server Operating System) kvantemål beskyttet af SQL Server CLR-værtslaget. Denne beskyttelse omfatter forebyggende SQLOS-switche, der kan øge CPU-forbruget. Årsagen til det forebyggende skift er for at beskytte SQLOS-planlæggeren. Et kald til en SQL Server CLR-baseret implementering kan tage uspecificeret tid, uden at der gives efter for SQLOS-planlæggeren eller ændre funktionsmåden og samtidighedsmønstrene. Afstandsdatatypen er derfor designet til at skifte forebyggende under hver aktivering.
Bemærk Afstandsdatatypen er baseret på SQL Server CLR. Den kan støde på forskellige niveauer af .NET-hukommelsesforbrug og funktionsmåde for trådskift.
Årsag
Metoderne for afstandsdatatype Udførelser er normalt under millisekunder og kræver muligvis ikke den fulde SQL OS-planlægger og forebyggende beskyttelse. Omkostningerne ved at skifte til og fra forebyggende tilstand kan være meget større end udførelsen af selve den rumlige metode.
Løsning
Denne rettelse introducerer sporingsflaget 6531 for at indikere over for SQLOS-værtslaget, at den afstandslige datatype bør undgå forebyggende beskyttelse. Dette kan reducere CPU-forbruget og forbedre den overordnede ydeevne for rumlige aktiviteter. Brug kun dette sporingsflag, hvis de individuelle, rumlige metodeaktiveringer (pr. række og kolonne) tager mindre end ~4 ms. Længere aktiveringer uden forebyggende beskyttelse kan føre til problemer med planlægningssamtidighed og SQLCLR-straffemeddelelser, der logføres i fejlloggen.
Problemet blev først løst i følgende kumulative opdatering af SQL Server.
Samlet opdatering 4 til SQL Server 2012 SP2 /en-us/help/3007556
Kumulativ opdatering 5 til SQL Server 2014 /en-us/help/3011055
Samlet opdatering 13 til SQL Server 2012 SP1 /en-us/help/3002044
Om kumulative opdateringer til SQL Server
Hver ny kumulativ opdatering til SQL Server indeholder alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige kumulative opdatering. Se de seneste kumulative opdateringer til SQL Server:
- Seneste kumulative opdatering til SQL Server 2012 SP2
- Seneste kumulative opdatering til SQL Server 2014
- Seneste kumulative opdatering til SQL Server 2012 SP1
Status
Microsoft har bekræftet, at dette er et problem i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".