Symptomer
Du bemærker en uventet vækst i tempdb-datafiler, hvis programmer, der bruger Microsoft SQL Server Service Broker, er konfigureret til at have et meddelelsesmønster på én meddelelse pr. samtale. Dette mønster ligner "fyr og glem"-mønsteret, der normalt bruges i overvågningsprogrammer.
Hvis du sender en forespørgsel til sys.dm_db_task_space_usage DMV (Dynamic Management View), mens problemet forekommer, kan du opleve, at værdien "internal_objects_dealloc_page_count" ikke stiger i samme hastighed som "internal_objects_alloc_page_count" for sessions-id'er, der kører interne Service Broker-opgaver.
Desuden frigives tempdb-pladsen ikke, selv når alle ventende samtaler er lukket og ryddet op.
Årsag
Væksten af datafilerne er hovedsageligt forårsaget af konstante indsættelser og opdateringer til sys.sysdesend-tabellen. I denne situation vokser tempdb-datafilerne fortsat, efterhånden som du bruger Service Broker.
Løsning
Dette problem er rettet i Microsoft SQL Server 2016.
Oplysninger om kumulativ opdatering
Kumulativ opdatering 5 til SQL Server 2012 Service Pack 3 (SP3)
Kumulativ opdatering 10 til SQL Server 2014 SP1
Kumulativ opdatering 3 til SQL Server 2014 SP2
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 SP3
Seneste kumulative opdatering til SQL Server 2014 SP1/SP2
Flere oplysninger
Hvis du vil frigøre den frigivne plads fra tempdb, skal du genstarte SQL Server-tjenesten.
For at undgå dette problem skal du følge de generelle anbefalinger i afsnittet "Teknikker til ydeevne og skalerbarhed" i følgende TechNet-emne:
Service Broker: Teknikker til ydeevne og skalerbarhed
Status
Microsoft bekræfter, at dette er et kendt problem i det aktuelle design af Service Broker.