J'ai trouvé d'étranges messages d'erreur dans le journal des erreurs SQL:
Bocss: le même blocage a lieu toutes les heures - nécessite une enquête
De nombreuses recompilations sont également répertoriées dans le journal des erreurs pour d'autres SPID, comme indiqué dans les exemples suivants:
04/09/2015 14: 30: 10, spid64, Unknown, une recompilation infini possible a été détectée pour SQLHANDLE 0x0200000059631A288882589E0C54B76404CAE1B97E08D3680000000000000000000000000000000000000000 PlanHandle 0x0600040059631A2860A62B654100000001000000000000000000000000000000000000000000000000000000 décalage de départ 1038 offset de fin 2600. La dernière raison de recompilation était 2. 04/09/2015 14:30:10 , spid150, Inconnu, Une recompilation infinie possible a été détectée pour SQLHANDLE 0x02000000EF886F018C4E0B163812B8B20150FE8FC7E6A06A0000000000000000000000000000000000000000 PlanHandle 0x06000400EF886F01901A816E0600000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.Une recompilation infinie possible a été détectée pour SQLHANDLE 0x0200000057C4C632D9052275CFF2B683B80F29501EE91D730000000000000000000000000000000000000000 PlanHandle 0x0600040057C4C63200EAC2BE3000000001000000000000000000000000000000000000000000000000000000 début du décalage 1064 offset de fin 2652. La dernière raison de recompilation a été 2. 04/09/2015 14: 30: 09, spid163, Unknown, une recompilation infini possible a été détectée pour SQLHANDLE 0x02000000E7C7BF0E5D70DE55759C7842860272AD474D69AB0000000000000000000000000000000000000000 PlanHandle 0x06000400E7C7BF0EF0EB68A52C000000010000000000000000000000000000000000000000000000000000000000 décalage de départ 1028 fin de décalage 2580. La dernière raison de recompilation était 2.
Qu'est-ce qui aurait pu causer ça?
On dirait que je n'ai plus les plans en cache.
en suivant les conseils de cet article http://www.sqlservercentral.com/Forums/Topic1479420-146-1.aspx
puis comme une mesure de sécurité a désactivé les catalogues de texte intégral, cela n'a fait aucune différence, alors j'ai annulé complètement les modifications (abandonné les nouveaux objets, etc.). Cela n'a également fait aucune différence, à la fin la seule chose qui semblait l'arrêter était un redémarrage des instances SQL, cela a immédiatement résolu le problème.
cela m'a aussi réglé, cependant, je dois encore trouver ce qui a causé ce gâchis au départ?
la source
SELECT
sur endm_exec_sql_text
utilisant la poignée qui est dans votre message d'erreur, sans obtenir d'erreurRéponses:
Selon le message de recompilation Infinite dans le journal d' erreurs sur le blog de l'équipe de programmation SQL et de développement d'API, ce message est déclenché lorsqu'une instruction dans un lot se recompile 100 fois de suite.
Ce message ne signifie pas nécessairement qu'il y a un problème; il existe pour aider à dépanner des déclarations qui pourraient légitimement être recompilées aussi souvent (par exemple, en raison de changements rapides dans les statistiques), ainsi que de véritables boucles de compilation infinies (ce qui serait rare à l'extrême).
Vous devez commencer par identifier l'instruction de déclenchement à partir des informations fournies et l'évaluer dans le contexte du code numérique donnant la raison des recompilations. Il existe un tableau de ces codes et de leur signification à plusieurs endroits dans Books Online, y compris sous SP: Recompile Event Class .
Des informations supplémentaires sont disponibles dans Planification de la mise en cache et de la recompilation dans SQL Server 2012 .
la source