CORRECTIF : Les blocages peuvent se produire lorsque plusieurs abonnements de notification de requête simultanées sont déclenchés sur les mêmes objets dans SQL Server 2005 ou SQL Server 2008

Traductions disponibles Traductions disponibles
Numéro d'article: 975090 - Voir les produits auxquels s'applique cet article
Microsoft distribue les correctifs de Microsoft SQL Server 2005 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é inclus avec la précédente de SQL Server 2005 version du correctif.Microsoft distribue les correctifs de Microsoft SQL Server 2008 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é inclus avec la précédente de SQL Server 2008 version du correctif.
Agrandir tout | Réduire tout

Symptômes

Envisagez le scénario suivant :
  • Dans Microsoft SQL Server 2005 ou Microsoft SQL Server 2008, vous configurer plusieurs abonnements de notification de requête sur certaines tables.
  • Vous mettez à jour ces tables.
  • Les demandes pour les abonnements de notification de requête sont déclenchés en même temps.
Dans ce scénario, les blocages peuvent se produire sur les tables de système de notification de requête (par exemple, une table système avec un nom semblable à sys.query_notification_xxxxxx). En outre, le graphique de blocage suivant est enregistré dans le fichier de journal des erreurs de SQL Server :
id de serveur = mode process7f8dc48 = requestType U = attente,
liste d'attente
id du propriétaire = mode process873ce38 = U,
liste de propriétaires,
keylock hobtid = 72057594049462272 dbid = 5 NomObjet = <database>du. sys.query_notification_626101271 nom_index = cidx id = lock178dd6c0
mode = associatedObjectId U = 72057594049462272,
id de serveur = mode process873ce38 = requestType U = attente,
liste d'attente
id du propriétaire = mode process7f8dc48 = U,
liste de propriétaires,
keylock hobtid = 72057594049462272 dbid = 5 NomObjet = <database>du. sys.query_notification_626101271 nom_index = cidx id = lock176848c0
mode = associatedObjectId U = 72057594049462272,
liste de ressources,
<query>,
inputbuf,
<query>,
cadre nom_proc = ligne adhoc = 1 sqlhandle = 0x020000009f5c4302918e8370f6d9bd71045a53f75b8056b3,
executionStack,
id de processus = process873ce38 taskpriority = 0 logused = waitresource 0 = KEY : waittime 5:72057594049462272 (0e0086ec58d5) = 4984 ownerId = transactionname 574444809 = CQueryScan::BeginNotifXact lasttranstarted = <Date><durée> XDES = 0x732047f8 lockMode = schedulerid U = 7 kpid = 8068 status = spid suspendu = 133 sbid = ecid 0 = priorité 0 = 0 transcount = 0 lastbatchstarted = <Date><durée> lastbatchcompleted = clientapp <Date><durée> = .NET nom d'hôte du fournisseur de données SqlClient = <nom_hôte> hostpid = loginname 1824 = <loginname>isolationlevel = lecture validée xactid (2) = currentdb 574444808 = 5 lockTimeout = 4 294 967 295 clientoption1 = clientoption2 671088672 = 128056,
<query>,
inputbuf,
<query>,
cadre nom_proc = ligne adhoc = 1 sqlhandle = 0x020000009f5c4302918e8370f6d9bd71045a53f75b8056b3,
executionStack,
id de processus = process7f8dc48 taskpriority = 0 logused = waitresource 0 = KEY : waittime 5:72057594049462272 (0d006843edc7) = ownerId 4984 = transactionname 574444769 = CQueryScan::BeginNotifXact lasttranstarted = <Date><durée> XDES = 0x6adc9528 lockMode = schedulerid U = 5 kpid = 676 status = spid suspendu = sbid 293 = ecid 0 = priorité 0 = 0 transcount = 0 lastbatchstarted = <Date><durée> lastbatchcompleted = clientapp <Date><durée> = .NET nom d'hôte du fournisseur de données SqlClient = <nom_hôte> 110 hostpid = loginname 1272 = isolationlevel <loginname>= lecture validée xactid (2) = currentdb 574444768 = 5 lockTimeout = 4 294 967 295 clientoption1 = clientoption2 671088672 = 128056,
liste de processus,
victime = process873ce38,
liste de blocage,

Cause

Par défaut, SQL Server utilise le niveau d'isolation des transactions READ_COMMITTED. Par conséquent, les requêtes internes de SQL Server ont susceptibles de rencontrer des blocages. Dans le scénario décrit dans la section «Symptômes», les requêtes qui provoquent le blocage sont des requêtes internes.

Résolution

SQL Server 2005 Service Pack 3

Tout d'abord, le correctif de ce problème a été publié dans mise à jour cumulative 6 pour SQL Server 2005 Service Pack 3. 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 :
974648Package de mise à jour cumulative 6 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. Microsoft vous recommande d'envisager l'application la plus récente version du 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
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 3 pour une installation de SQL Server 2005 Service Pack 3. Par défaut, aucun correctif fourni dans un service pack SQL Server est inclus dans le prochain service pack SQL Server.

La version de SQL Server 2008

Important Vous devez installer ce correctif si vous exécutez la version de SQL Server 2008.

Le correctif de ce problème a été publié tout d'abord en 8 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 :
975976Package de mise à jour cumulative 8 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 prendre en compte l'application la plus récente version du 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

SQL Server 2008 Service Pack 1

Important Vous devez installer ce correctif si vous exécutez SQL Server 2008 Service Pack 1.

Tout d'abord, le correctif de ce problème a été publié dans mise à jour cumulative 5 pour SQL Server 2008 Service Pack 1. 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 :
975977Package de mise à jour cumulative 5 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. Microsoft vous recommande d'envisager l'application la plus récente version du 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
Microsoft SQL Server 2008 les correctifs sont créés pour les service packs pour SQL Server spécifiques. Vous devez appliquer un correctif SQL Server 2008 Service Pack 1 pour une installation de SQL Server 2008 Service Pack 1. Par défaut, aucun correctif fourni dans un service pack SQL Server est inclus dans le prochain service pack SQL Server.

Après avoir appliqué ce correctif, le niveau d'isolation sera défini à Serializable lorsque le moteur de base de données accède aux tables système.

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

Conformément à la cause de ce problème, la méthode typique de réglage et l'indexation ne peut pas résoudre ce problème. Le correctif est utilisé pour modifier temporairement le niveau d'isolation à un niveau supérieur pour une certaine partie de cette opération pour vous assurer que les requêtes problématiques n'exécutent pas en blocage.

Références

Pour plus d'informations sur le modèle ISM (Incremental Servicing Model pour SQL Server), cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
935897Un modèle ISM (Incremental Servicing Model) 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 l'obtention de SQL Server 2005 Service Pack 3, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
913089Comment faire pour obtenir le dernier service pack pour SQL Server 2005
Pour plus d'informations sur les nouvelles fonctionnalités dans SQL Server 2005 Service Pack 3 (SP3) et les améliorations dans SQL Server 2005 SP3, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://go.microsoft.com/fwlink/?LinkId=131442
Pour plus d'informations sur le schéma 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 mises à jour logicielles 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: 975090 - Dernière mise à jour: lundi 19 octobre 2009 - Version: 1.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Workgroup 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 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
Mots-clés : 
kbmt kbexpertiseadvanced kbsurveynew kbqfe kbfix KB975090 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: 975090
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