Korriger: Høyt CPU-forbruk når du bruker Avstandstoleranse datatype og tilhørende metoder i SQL Server 2012 eller SQL Server-2014

Feil #: 212578 (Innholdsvedlikehold) VSTS:3153124

Symptomer

Når du bruker Avstandstoleranse datatype og tilhørende metoder i 2012 for Microsoft SQL Server eller Microsoft SQL Server-2014, er i SQL Server-operativsystemet (SQLOS)-scheduler kvantum mål beskyttet av SQL Server CLR vert laget. Denne typen beskyttelse som involverer preemptive, SQLOS-svitsjer kan øke CPU-forbruk. Årsaken til bryteren preemptive er å beskytte SQLOS planleggeren. Et kall til en SQL Server CLR-basert implementering kan ta uspesifisert tid uten å SQLOS scheduler eller endre virkemåten og samtidighet mønstrene. Derfor er Avstandstoleranse datatypen utformet for å bytte preemptive under hver aktivering.

Obs! Avstandstoleranse datatypen er basert på SQL Server-CLR, kan det oppstå forskjellige nivåer av .NET minneforbruk og tråd bytte virkemåte.

Årsak

Avstandstoleranse data type metoder kjøringer er vanligvis underordnede millisekunder, og krever kanskje ikke fullstendig SQL OS scheduler og preemptive beskyttelse. Indirekte kostnader for å bytte til og fra preemptive modus kan være mye større enn utførelsen av metoden Avstandstoleranse seg selv.

Oppløsning

Denne hurtigreparasjonen innfører sporingsflagg 6531 fortelle SQLOS vert laget at datatypen Avstandstoleranse bør unngå preemptive beskyttelse. Dette kan redusere CPU-forbruk og forbedre den generelle ytelsen for avstandstoleranse aktiviteter. Bare Bruk denne sporingsflagg Hvis individuelle, Avstandstoleranse metode-anrop (per rad og kolonne) tar mindre enn ~ 4ms. Lengre anrop uten preemptive beskyttelse kan føre til Oppgaveplanlegging samtidighet problemer og SQLCLR støyt meldinger logget til feilloggen.

Problemet ble først løst i den følgende kumulative oppdateringen av SQL Server.

Kumulativ oppdatering 4 for SQL Server 2012 SP2/en-us/help/3007556

Kumulativ oppdatering 5 for SQLServer 2014/en-us/help/3011055

Kumulativ oppdatering 13 for SQL Server 2012 SP1/en-us/help/3002044

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".

Author:lyi
Writer: v-juwang
Teknisk redaktør: rdorr; brellwei; lyi
Redaktør: v-emy

Trenger du mer hjelp?

Utvid ferdighetene dine
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Microsoft Insiders

Var denne informasjonen nyttig?

Takk for tilbakemeldingen!

Takk for tilbakemeldingen! Det høres ut som det kan være lurt å sette deg i kontakt med én av våre Office-kundestøtteagenter.

×