Symptômes
Lorsque vous exécutez une requête sur une table partitionnée dans Microsoft SQL Server 2008 R2 ou dans Microsoft SQL Server 2012, un résultat incorrect est retourné par intermittence. Ce problème se produit si les conditions suivantes sont remplies :
-
La différence de taille entre les partitions de la table est importante.
-
La requête utilise un niveau élevé de parallélisme dans le plan d’exécution de la requête.
RemarqueUn degré élevé signifie que l’option max degree (MAXDOP) est définie sur un nombre supérieur à six.
Résolution
Informations sur les mises à jour cumulatives
Mise à jour cumulative 6 pour SQL Server 2012
Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 6. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2012, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2728897 Package de mise à jour cumulative 6 pour SQL Server 2012Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans l’ancienne version du correctif SQL Server 2012. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
2692828 Builds SQL Server 2012 publiées après la sortie de SQL Server 2012
Mise à jour cumulative 2 pour SQL Server 2012 SP1
Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 2. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2012 SP1, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2790947 Package de mise à jour cumulative 2 pour SQL Server 2012 Service Pack 1Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2012 SP1. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
2772858 Builds SQL Server 2012 publiées après la sortie de SQL Server 2012 Service Pack 1
Mise à jour cumulative 4 pour SQL Server 2008 R2 Service Pack 2 (SP2)
Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 4. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008 R2 Service Pack 2, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2777358 Package de mise à jour cumulative 4 pour SQL Server 2008 R2 Service Pack 2Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version de correctif du Service Pack 2 SQL Server 2008 R2 antérieur. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
2730301 Builds SQL Server 2008 R2 publiées après la sortie de SQL Server 2008 R2 Service Pack 2
Solution de contournement
Pour contourner ce problème, exécutez une requête qui utilise un niveau de parallélisme inférieur à six.Remarque La valeur MAXDOP optimale risque de varier. Pour vous assurer que vous avez supprimé le problème, définissez la valeur MAXDOP sur 1.
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.