Symptomer
Når du kører mange grupperet søjlestore-masseindsætning samtidigt i Microsoft SQL Server 2017 og 2019 på en computer, der ikke har tilstrækkelig hukommelse, modtager du muligvis en time out-fejl for hukommelse.
Status
Microsoft har bekræftet, at problemet findes i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".
Flere oplysninger
Forespørgsler om masseindsætning i kolonnelager kan kræve meget hukommelse, for operatoren til indsættelse af kolonnelager og andre hukommelsesforbrugsoperatorer i forespørgslen, f.eks. sortering.
Som standard SQL Server i 25 sekunder, før hukommelsen tildeles. Hvis en masseindsætning stadig ikke kan få den nødvendige hukommelse, vil den falde tilbage til trickle insert for at sikre, at forespørgsler kan fortsætte. (Du kan finde flere oplysninger om indsætning af trick i Kolonnestore-indekser – Vejledning til indlæsning af data).
Dette sker dog kun, når antallet af aktive sessioner med et hukommelsestil tildeling i den aktuelle ressourcepulje er mindre end en bestemt grænseværdi, der er i forhold til antallet af logiske kerner. Hvis antallet af sådanne samtidige sessioner er for højt, kan masseindsætningsforespørgslen mislykkes og generere en time out-fejl i hukommelsen efter 25 sekunder. Dette kan medføre uventede problemer for dataindlæsningsprogrammer. Denne opdatering ændrer, hvordan en masseindsætning venter på et hukommelses grant. Indsættelsen bruger nu en time out-værdi, der beregnes på samme måde som enhver anden type forespørgsel.
Løsning
Dette problem er rettet i følgende kumulative opdateringer til SQL Server:
Hver ny kumulativ opdatering til SQL Server indeholder alle hotfixes og alle de sikkerhedsrettelser, der var inkluderet i den forrige kumulative opdatering. Se de seneste akkumulerede opdateringer til SQL Server:
Referencer
Få mere at vide om den terminologi,som Microsoft bruger til at beskrive softwareopdateringer.