1

Je consulte le moniteur Activty pour SQL Server 2005 et certains processus occupent une grande partie du processeur. Quand je regarde ce qui essaie d'être exécuté, je reçois:Problèmes liés au Moniteur d'activité dans SQL Server 2005

set transaction isolation level read committed 

Ce code ne provient pas de l'une de nos applications.

Quelle est la cause?

Que faire?

Répondre

0

Examinez sys.dm_exec_sessions et sys.dm_exec_connections pour les identifiants de session qui occupent la CPU. Vous trouverez le nom de l'application, le nom d'hôte et l'ID de processus du client.

+0

Vous pouvez obtenir tous ceux du moniteur d'activité. Ma question est de savoir ce qui provoque l'exécution de ce SQL parce qu'il utilise une quantité exorbitante de CPU. Tellement que cela cause des problèmes. – Jason

+0

Eh bien, * quelle * application est en cours d'exécution ces? La réponse à votre question dépend d'abord de l'origine des requêtes, n'est-ce pas? S'agit-il d'une sorte de surveillance faisant une boucle trop serrée, sont-ils des applications trop nombreuses ont commencé, est-ce qu'il y a plus de demandes que vous avez posté? –

+0

Le problème est que le SQL ci-dessus est montré à partir de plusieurs applications (toutes les applications Web). Cependant, comme indiqué dans la question, ces déclarations ne se trouvent dans aucun code. Est-ce quelque chose que SQL Server pourrait faire? – Jason

0

Il s'agit du niveau d'isolation de transaction par défaut pour ADO.NET et la plupart des structures OR/M. Les chances sont que cela vient en fait pour votre code, vous ne le savez tout simplement pas.

Je pense que c'est la mauvaise question à poser de toute façon - la vraie question est, pourquoi cette instruction TSQL plutôt commune provoque le pic de votre processeur de base de données?