CORRECTIF : Vous ne pouvez pas supprimer une session qui s'exécute une requête sur un serveur lié dans SQL Server 2005 et SQL Server 2008

Traductions disponibles Traductions disponibles
Numéro d'article: 961237 - Voir les produits auxquels s'applique cet article
Microsoft distribue Microsoft SQL Server 2005 ou Microsoft SQL Server 2008 résout sous la forme d'un fichier téléchargeable unique. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et tous les correctifs de sécurité fournies avec la précédente SQL Server 2005 ou Microsoft SQL Server 2008 version du correctif.
Agrandir tout | Réduire tout

Sommaire

Symptômes

Symptôme 1

Dans Microsoft SQL Server 2005 ou dans Microsoft SQL Server 2008, vous exécutez une requête sur un serveur lié. Lorsque vous essayez d'arrêter la session qui s'exécute la requête, vous ne pouvez pas arrêter la session. En outre, les performances de SQL Server devient très lente.

Un fichier minidump est généré dans le dossier du journal SQL Server. If you query the sys.dm_os_waiting_tasks dynamic management view, you receive a result that resembles the following:
session_id request_id  ecid        blocking_session_id blocking_ecid task_state      wait_type      wait_duration_ms     
---------- ----------- ----------- ------------------- ------------- --------------- ------------------------------- 
        14        NULL        NULL                NULL             0 NULL                             0 
        20           0           0                   0             0 SUSPENDED       WRITELOG         1360 
        53           0           0                  58             0 SUSPENDED       LCK_M_S          31982080 
        55           0           0                   0             0 RUNNING                          0 
        58           0           0                   0             0 SUSPENDED       LOGBUFFER        1350 
        59           0           0                   0             0 SUSPENDED       LOGBUFFER        1350 
        60           0           0                   0             0 RUNNING                          0 
        61           0           0                   0             0 SUSPENDED       LOGBUFFER        1350 
        63           0           0                  14             0 SUSPENDED       LCK_M_X          76460 
        66           0           0                   0             0 SUSPENDED       LOGBUFFER        1350 
        68           0           0                   0             0 SUSPENDED       LOGBUFFER        1330 
        70           0           0                   0             0 RUNNING                          0 
        77           0           0                   0             0 SUSPENDED       LOGBUFFER        1350 
        84           0           0                   0             0 SUSPENDED       WRITELOG         1230 
        87           0           0                   0             0 SUSPENDED       WRITELOG         3970 
        88           0           0                   0             0 SUSPENDED       WRITELOG         1210 
Note You must restart the SQL Server service to resolve this issue.

Symptôme 2

Vous pouvez également rencontrer la croissance de mémoire SQLAgent aux tailles inhabituelles. Ce problème se produit car un travail qui planifie SQLAgent exécute une procédure stockée à un serveur lié. La procédure stockée génère une erreur OLEDB. Le texte de l'erreur OLEDB est passé à SQLAgent et mémoire est allouée en permanence pour le message de texte, mais jamais désallouée. Cela provoque la croissance de mémoire SQLAgent. La boucle indefinate provoque le grand nombre d'allocations de mémoire de SQLAgent.

Informations de la pile des appels

 # Child-SP          RetAddr           Call Site
00 00000000`1e29c548 00000000`77adccec ntdll!memcpy+0x314 
01 00000000`1e29c550 00000000`77adbed4 ntdll!RtlpReAllocateHeap+0x741 
02 00000000`1e29c800 00000000`73e62504 ntdll!RtlReAllocateHeap+0xa4 
03 00000000`1e29c910 00000000`73de8356 sqlncli10!XxMpHeapReAlloc+0xca 
04 00000000`1e29c950 00000000`73de82de sqlncli10!MpHeapReAlloc+0x44 
05 00000000`1e29c9e0 00000000`73de826e sqlncli10!MpReallocZeroMemory+0x69 
06 00000000`1e29ca10 00000000`73dfb015 sqlncli10!SQLReAllocateMemoryEx+0x2a 
07 00000000`1e29ca50 00000000`73df8b7b sqlncli10!PlAddNewIEx+0x8e 
08 00000000`1e29caa0 00000000`73df869b sqlncli10!SortErrors+0x6b 
09 00000000`1e29cae0 000007fe`f6448d44 sqlncli10!SQLGetDiagFieldW+0x2bc 
0a 00000000`1e29d180 000007fe`f64471b9 odbc32!DriverGetDiagField+0x124 
0b 00000000`1e29d200 00000000`743a253e odbc32!SQLGetDiagFieldW+0x471 
0c 00000000`1e29d750 00000000`7439d0d3 sqlsvc!GetInfoMessage+0x4e 
0d 00000000`1e29d7b0 00000000`7439fee2 sqlsvc!dbQSQLMessageHandler+0x3a3 
0e 00000000`1e2a1b50 00000000`0021c416 sqlsvc!QSQLExecDirectAsync+0x1a2 
0f 00000000`1e2a1bb0 00000000`0021bac7 SQLAGENT!DoSQL+0x316 
10 00000000`1e2a21a0 00000000`002339a3 SQLAGENT!ExecuteTSQL+0xd97 
11 00000000`1e2a6cd0 00000000`00231f8a SQLAGENT!StartStep+0x693 
12 00000000`1e2a77d0 00000000`00230daf SQLAGENT!DoStep+0x3ba 
13 00000000`1e2ac7a0 00000000`756437d7 SQLAGENT!JobManager+0xa6f

Cause

Lorsque vous essayez d'arrêter la session qui s'exécute la requête, une exception interne se produit. SQL Server commence à effectuer une itération d'une boucle indéfinie. Par conséquent, vous ne pouvez pas arrêter la session et les performances diminuent.

Résolution

Informations sur la mise à jour cumulatives pour SQL Server 2005 Service Pack 2

Le correctif de ce problème a été publié tout d'abord en mise à jour cumulative 12 pour SQL Server 2005 Service Pack 2. Pour plus d'informations sur ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
962970Package de mise à jour cumulative 12 pour SQL Server 2005 Service Pack 2
Remarque Les versions étant cumulatifs, chaque nouvelle version de correctif contient l'intégralité des correctifs et tous les correctifs de sécurité inclus avec la précédente de SQL Server 2005 version du correctif. Microsoft vous recommande d'envisager l'application de la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
937137Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 2
Microsoft SQL Server 2005 les correctifs sont créés pour les service packs pour SQL Server spécifiques. Vous devez appliquer un correctif SQL Server 2005 Service Pack 2 à une installation de SQL Server 2005 Service Pack 2. Par défaut, aucun correctif fourni dans un service pack SQL Server est inclu dans le prochain service pack SQL Server.

Informations de mise à jour cumulatives pour SQL Server 2005 Service Pack 3

Le correctif de ce problème a été tout d'abord publié en mise à jour cumulative 3 pour SQL Server 2005 Service Pack 3. Pour plus d'informations sur la façon d'obtenir ce package de mise à jour cumulatives pour SQL Server 2005, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
967909Package de mise à jour cumulative 3 pour SQL Server 2005 Service Pack 3
Remarque Les versions étant cumulatifs, chaque nouvelle version de correctif contient l'intégralité des correctifs et tous les correctifs de sécurité inclus avec la précédente de SQL Server 2005 version du correctif. Nous vous recommandons de procéder à l'application de la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
960598Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 3

Informations de mise à jour cumulative de la version la version de SQL Server 2008

Le correctif de ce problème a été publié tout d'abord en 4 mise à jour cumulative. Pour plus d'informations sur la façon d'obtenir ce package de mise à jour cumulatives pour SQL Server 2008, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
963036Lot de mises à jour cumulatives 4 pour SQL Server 2008
Remarque Les versions étant cumulatifs, chaque nouvelle version de correctif contient l'intégralité des correctifs et tous les correctifs de sécurité inclus avec la précédente de SQL Server 2008 version du correctif. Nous vous recommandons de procéder à l'application de la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
956909Versions de SQL Server 2008 publiées après SQL Server 2008

Informations sur la mise à jour cumulatives pour SQL Server 2008 Service Pack 1

Le correctif de ce problème a été tout d'abord publié en mise à jour cumulative 1 pour SQL Server 2008 Service Pack 1. Pour plus d'informations sur la façon d'obtenir ce package de mise à jour cumulatives pour SQL Server 2008, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
969099Package de mise à jour cumulative 1 pour SQL Server 2008 Service Pack 1
Remarque Les versions étant cumulatifs, chaque nouvelle version de correctif contient l'intégralité des correctifs et tous les correctifs de sécurité inclus avec la précédente de SQL Server 2008 version du correctif. Nous vous recommandons de procéder à l'application de la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
970365Versions de SQL Server 2008 publiées après SQL Server 2008 Service Pack 1

Contournement

Pour contourner le symptôme 1, utilisez une expression pour la propriété SQLStatementSource de la tâche d'exécution de requêtes SQL pour spécifier l'instruction SELECT à l'aide de la variable. Par exemple, définir l'expression suivante pour la propriété SQLStatementSource de la tâche d'exécution de requêtes SQL.
SELECT filed1 AS a FROM table1 WHERE filed1="+ @[User::variable1]
Symptôme 2, si SQLAgent croissance de mémoire anormalement élevée est visible, la cause première de l'erreur OLEDB doit également être examiné et résolu ainsi que l'application de la mise à jour cumulative au processus SQL Server.

Statut

Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section "S'applique à".

Plus d'informations

Plus d'informations sur le package de mise à jour cumulative 12 pour SQL Server 2005 Service Pack 2

Pour plus d'informations sur les fichiers sont modifiés et pour d'informations sur les conditions requises pour appliquer le package de mise à jour cumulative qui contient le correctif décrit dans cet article de la base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
962970Package de mise à jour cumulative 12 pour SQL Server 2005 Service Pack 2

Plus d'informations sur le package de mise à jour cumulative 3 pour SQL Server 2005 Service Pack 3

Pour plus d'informations sur les fichiers sont modifiés et pour d'informations sur les conditions requises pour appliquer le package de mise à jour cumulative qui contient le correctif décrit dans cet article de la base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
967909Package de mise à jour cumulative 3 pour SQL Server 2005 Service Pack 3

Plus d'informations sur le lot de mises à jour cumulatives 4 pour la version de SQL Server 2008

Pour plus d'informations sur les fichiers sont modifiés et pour d'informations sur les conditions requises pour appliquer le package de mise à jour cumulative qui contient le correctif décrit dans cet article de la base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
963036Lot de mises à jour cumulatives 4 pour SQL Server 2008

Plus d'informations sur le package de mise à jour cumulative 1 pour SQL Server 2008 Service Pack 1

Pour plus d'informations sur les fichiers sont modifiés et pour d'informations sur les conditions requises pour appliquer le package de mise à jour cumulative qui contient le correctif décrit dans cet article de la base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
969099Package de mise à jour cumulative 1 pour SQL Server 2008 Service Pack 1

Informations de la pile des appels

0:053> kL30
Child-SP          Child-BSP         RetAddr           Call Site
00000000`46a3b320 00000000`46a41a78 00000000`77b99750 ntdll!RtlVirtualUnwind+0x100
00000000`46a3bc80 00000000`46a418f8 00000000`781a5900 ntdll!RtlUnwindEx+0x110
00000000`46a3c890 00000000`46a41870 00000000`781a2d40 msvcr80!_UnwindNestedFrames+0x2a0
00000000`46a3c970 00000000`46a41810 00000000`781a3950 msvcr80!CatchIt+0xe0
00000000`46a3c9d0 00000000`46a41730 00000000`781a41a0 msvcr80!FindHandler+0x710
00000000`46a3d480 00000000`46a416b8 00000000`781a4d90 msvcr80!__InternalCxxFrameHandler+0x4e0
00000000`46a3d480 00000000`46a41628 00000000`77c28860 msvcr80!__CxxFrameHandler3+0x370
00000000`46a3d4a0 00000000`46a41628 00000000`77b9a2d0 ntdll!RtlpExecuteEmHandlerForException+0x50
00000000`46a3d4c0 00000000`46a414a8 00000000`77b993a0 ntdll!RtlDispatchException+0x3f0
00000000`46a3e170 00000000`46a41450 00000000`77b99440 ntdll!RtlpRaiseException+0x120
00000000`46a3ec00 00000000`46a41438 00000000`76eb1d40 ntdll!RtlRaiseException+0x20
00000000`46a3ec00 00000000`46a413c8 00000000`781a5aa0 kernel32!GetDateFormatW+0x7a6d8
00000000`46a3eca0 00000000`46a41360 00000000`014f2d30 msvcr80!_CxxThrowException+0x160
00000000`46a3ecf0 00000000`46a412f0 00000000`014f3150 sqlservr!TurnUnwindAndThrowImpl+0x2f0
00000000`46a3ee50 00000000`46a411f0 00000000`014f37b0 sqlservr!ex_raise2+0x6b0
00000000`46a3f110 00000000`46a41190 00000000`038ee0e0 sqlservr!ex_raise+0xc0
00000000`46a3f150 00000000`46a41158 00000000`028bffa0 sqlservr!`anonymous namespace'::LogTdsProtocolError+0xd0
00000000`46a3f160 00000000`46a41138 00000000`0200eed0 sqlservr!`anonymous namespace'::RaiseErrorOnNestedStream+0x60
00000000`46a3f160 00000000`46a41088 00000000`01172180 sqlservr!CPostHydraTds::SendMsgImpl+0xe98100
00000000`46a3f1c0 00000000`46a41030 00000000`01172040 sqlservr!ODS_SENDFULLMSG+0x100
00000000`46a3f220 00000000`46a40fa0 00000000`011738b0 sqlservr!SendErrorToUser+0x1d0
00000000`46a3f290 00000000`46a40f20 00000000`01105a00 sqlservr!CErrorReportingManager::SendErrorToUser+0x260
00000000`46a3f320 00000000`46a40e10 00000000`0118a3d0 sqlservr!CErrorReportingManager::CwchFormatAndPrint+0x610
00000000`46a3f470 00000000`46a40dd8 00000000`0118a2f0 sqlservr!ex_vcallprint+0xb0
00000000`46a3f4b0 00000000`46a40d80 00000000`024cbfb0 sqlservr!ex_callprint+0xa0
00000000`46a3f4f0 00000000`46a40c90 00000000`02514e20 sqlservr!COledbError::FRelayErrorInfo+0x960
00000000`46a3f570 00000000`46a40c58 00000000`02f82030 sqlservr!COledbError::FPrintSQLServerError+0x190
00000000`46a3f5a0 00000000`46a40c10 00000000`0441b450 sqlservr!COledbError::GatherAndPrintMultipleResultsError+0x30
00000000`46a3f5b0 00000000`46a40b28 00000000`0164d160 sqlservr!CQScanRmtQueryNew::GetRow+0xad0
00000000`46a3f660 00000000`46a40a28 00000000`01768560 sqlservr!CQScanNLJoinTrivialNew::GetRow+0x1a90
00000000`46a3f690 00000000`46a40928 00000000`01333d30 sqlservr!CXStmtQuery::ErsqExecuteQuery+0xe50
00000000`46a3f760 00000000`46a407c8 00000000`0130ce40 sqlservr!CMsqlExecContext::ExecuteStmts<1,1>+0x19d0
00000000`46a3f870 00000000`46a406d0 00000000`0130ac70 sqlservr!CMsqlExecContext::FExecute+0x7c0
00000000`46a3f960 00000000`46a405f0 00000000`010fa300 sqlservr!CSQLSource::Execute+0x5f0
00000000`46a3fa10 00000000`46a404f8 00000000`010fa5c0 sqlservr!process_request+0x5c0
00000000`46a3fbe0 00000000`46a40478 00000000`0100e4b0 sqlservr!process_commands+0x6d0
00000000`46a3fdf0 00000000`46a40420 00000000`0100e210 sqlservr!SOS_Task::Param::Execute+0x1a0
00000000`46a3fe70 00000000`46a40378 00000000`0100dc30 sqlservr!SOS_Scheduler::RunTask+0x190
00000000`46a3fe90 00000000`46a402b0 00000000`01061ea0 sqlservr!SOS_Scheduler::ProcessTasks+0x170

Références

Pour plus d'informations à propos de la liste de builds qui sont disponibles après SQL Server 2005 Service Pack 3, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
960598Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 3
Pour plus d'informations à propos de la liste des builds qui sont disponibles après la publication de SQL Server 2008 Service Pack 1, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
970365Versions de SQL Server 2008 publiées après SQL Server 2008 Service Pack 1
Pour plus d'informations à propos de la liste des builds qui sont disponibles après la publication de SQL Server 2008, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
956909Versions de SQL Server 2008 publiées après SQL Server 2008
Pour plus d'informations à propos de la liste de builds qui sont disponibles après SQL Server Service Pack 2, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
937137Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 2
Pour plus d'informations sur le modèle de service incrémentiel pour SQL Server, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
935897Un modèle de service incrémentiel est disponible à partir de l'équipe SQL Server pour la fourniture des correctifs logiciels pour les problèmes signalés
Pour plus d'informations sur la façon d'obtenir SQL Server 2005 Service Pack 2, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
913089Comment faire pour obtenir la dernière pack de service pour SQL Server 2005
Pour plus d'informations sur les nouvelles fonctionnalités et améliorations dans SQL Server 2005 Service Pack 2, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://go.microsoft.com/fwlink/?LinkId=71711
Pour plus d'informations sur le modèle d'affectation de noms pour les mises à jour de SQL Server, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
822499Nouveau modèle d'affectation de noms pour les packages de mise à jour logicielle de Microsoft SQL Server
Pour plus d'informations sur la terminologie de mise à jour de logiciel, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
824684Description de la terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft

Propriétés

Numéro d'article: 961237 - Dernière mise à jour: jeudi 13 mai 2010 - Version: 6.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
Mots-clés : 
kbmt kbsql2005engine kbsurveynew kbexpertiseadvanced kbqfe kbfix KB961237 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 961237
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com