Crescita imprevista dei file di dati di tempdb a causa dell'utilizzo di SQL Server Service Broker

IMPORTANTE: il presente articolo è stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l’obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre è perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilità per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualità della traduzione.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 3005011
Sintomi
Questo problema riguarda la crescita di tempdb quando le applicazioni che utilizzano SQL Server Service Broker sono configurate in modo specifico seguente.

Quando esiste un modello di messaggio di un messaggio per ciascuna conversazione, simile al modello "fire-and-forget" che viene generalmente utilizzato in applicazioni di controllo, nelle applicazioni che utilizzano SQL Server Service Broker, è possibile notare un aumento delle dimensioni del file di dati di tempdb . Si tratta principalmente a causa del costante inserimenti e aggiornamenti per la tabella sys.sysdesend .In questo caso, i file di dati di tempdb continuano a crescere con l'utilizzo di Service Broker.

Se viene richiesta la visualizzazione di gestione dinamica (DMV) di sys.dm_db_task_space_usage mentre si sta verificando questo problema, è possibile vedere che "internal_objects_dealloc_page_count" non aumenta con la stessa velocità rispetto a "internal_objects_alloc_page_count" per session_ids che eseguono le attività di Service Broker interne.

Lo spazio di tempdb non viene rilasciato anche quando tutte le conversazioni in sospeso verranno chiusi e pulite.
Cause
Microsoft conferma che si tratta di un problema noto nel progetto corrente di Service Broker.
Risoluzione
La correzione per il problema non è ancora disponibile. Nel frattempo, è possibile riavviare il servizio SQL per recuperare lo spazio di tempdb.

Per evitare questo problema, è possibile seguire le raccomandazioni generali nella sezione "Tecniche di prestazioni e scalabilità" del seguente articolo Microsoft TechNet:

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 3005011 - Ultima revisione: 10/14/2014 03:50:00 - Revisione: 1.0

Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, SQL Server 2012 Enterprise Core, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbsurveynew kbtshoot kbexpertiseinter kbmt KB3005011 KbMtit
Feedback