KB4051359 – LØSNING: SQL Server går tom for minne når parametere med tabellverdi registreres i økter med utvidede hendelser i SQL Server 2016, selv om innsamling av setning eller datastrøm ikke er aktivert

Gjelder for
SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Symptomer

La oss si at du oppretter en økt med utvidede hendelser eller SQL Profiler-sporing som registrerer rpc_starting eller rpc_completed-hendelsen i Microsoft SQL Server 2016, og at innsamlingserklæringen eller datastrømmen ikke er aktivert (du anga ikkeparameterne collect_statement eller collect_data_stream for Xevents-økten, eller parameteren Text Data eller Binary Data for SQL Profiler). Hvis SQL Server-aktiviteten involverte tabellverdiparametere (TVP-er) registreres i løpet av økten, kan minnebruken til SQL Server vokse mye mer enn nødvendig. Dette kan føre til alvorlig nedgang og i ekstreme tilfeller tømme SQL Server-minnet, og du får følgende melding om harde feil 701 for pågående operasjoner:

Obs!

Det er ikke nok systemminne i ressursutvalget som er standard til å kjøre denne spørringen

Obs! Hvis du bruker DBCC MEMORYSTATUS eller query sys.dm_os_memory_clerks, kan det hende du ser at den OBJECTSTORE_LBSS minneassistenten viser et stort minneforbruk.

Oppløsning

Problemet der en økt med utvidede hendelser eller en profileringssporing som ikke er konfigurert til å samle inn setninger eller datastrømmer, fremdeles krever store minnebuffere fordi TVP-materialet behandles av denne løsningen.

Vær oppmerksom på Hvis økten med utvidede hendelser eller SQL Profiler-sporingen er konfigurert til å samle inn setninger eller data/binærstrøm, og SQL Server-aktiviteten involvert TVP-er registreres under denne økten, kan minnebruken til SQL Server fortsatt øke selv med gjeldende løsning tatt i bruk, da minneforbruket i dette tilfellet er nødvendig for å håndtere TVP-strømmen i sporingen og er fullt forventet.

Vi anbefaler derfor at du ikke kjører permanente økter eller sporinger med de tidligere nevnte kombinasjonene av hendelser og datafelt på SQL Server-forekomster som sannsynligvis vil motta intensive (i antall eller størrelse) TVP-baserte aktiviteter.

Oppdateringspakke for SQL Server:

Denne løsningen er inkludert i Service Pack 2 for SQL Server 2016.

Obs! Hvis du vil ha en annen løsning som begrenser antall sporede rader i en TVP, kan du se KB-4468102.

Om SQL Server 2016-bygg

Hvert nye bygg for SQL Server 2016 inneholder alle hurtigreparasjoner og sikkerhetsoppdateringer som fantes i forrige bygg. Vi anbefaler at du installerer den nyeste builden for SQL Server 2016.

Status

Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen «Gjelder for».

Kilder

Finn ut mer om terminologien som Microsoft bruker til å beskrive programvareoppdateringer.