Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Symptômes

Prenons l’exemple du scénario suivant :

  • Vous avez une table FileStream de très grande taille.

  • Vous exécutez une requête Suppression de lignes dans la table FileStream qui crée un plan de requête coûteux, par exemple, filtré par une jointure interne vers une autre table de grande taille dans le système.

  • L’optimiseur de requête sélectionne un plan d’exécution parallèle.

Dans ce scénario, unssertion se produira et des messages d’erreur similaires à ce qui suit dans le journal des erreurs SQL Server peuvent s’afficher :

Erreur SpidNumberspid SPID : 5553, gravité : 20, État : 6.

DateHeure SPID SpidNumber erreur interne à SQL Server. Le gestionnaire FILESTREAM ne peut pas continuer avec la commande actuelle.

Statut

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

Résolution

Ce problème a été résolu dans les mises à jour cumulatives de SQL Server suivantes :

À propos des mises à jour cumulatives pour SQL Server :

Chaque nouvelle mise à jour cumulative de SQL Server contient toutes les HotFix et tous les correctifs de sécurité inclus dans le précédent mise à jour cumulative. Consultez les dernières mises à jour cumulatives pour SQL Server :

Solution de contournement

To contourner ce problème,l’unité d’organisation y peut utiliser la méthode suivante :

Déplacez la requête INNER JOIN vers une instruction séparée, puis enregistrez les résultats dans une table temporaire. Ensuite, exécutez la requête Suppression filtrée par les entrées de la table temporaire. De plus, vous pouvez augmenter le seuil des coûts pour le parallélisme pour obliger l’optimiseur à sérialiser le plan de requête.

Par exemple :

Sélectionnez RefTable. alias dans #T à partir de DB. dbo. OuterTable INNER JOIN DB. dbo. RefTable dans RefTable. alias = OuterTable. alias

             OÙ OuterTable. alias > 30006 et OuterTable. alias < 30010 

SUPPRIMER de DB. dbo. Tabulaire OÙ alias dans (SELECT * FROM #T)

Références

En savoir plus sur la terminologie Microsoft utilise pour décrire les mises à jour logicielles.

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×