KB3138659 - CORRECTIF : Ralentissement des performances en cas d’interrogation de types de données numériques à partir d’une base de données Oracle

S’applique à
SQL Server 2012 Service Pack 3 SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Symptômes

Prenons le scénario suivant :

  • Vous configurez un serveur lié pour accéder à une base de données Oracle en tant que source distante dans Microsoft SQL Server 2012 ou SQL Server 2014, et vous utilisez le fournisseur OleDB « Oracle.OleDB » pour ce serveur lié.
  • Vous utilisez une requête distante qui fait référence à une table Oracle et cette table contient une ou plusieurs colonnes avec le type NUMBER propriétaire d’Oracle. Ce tableau contient également un nombre significatif de lignes.

Dans ce scénario, vous pouvez rencontrer des problèmes de performances par rapport au fournisseur OleDB Microsoft « MSDAORA » hérité. Ce problème se produit en raison de la façon dont le fournisseur « Oracle.OleDB » signale le type de données NUMBER à SQL Server.

Résolution

Pour résoudre ce problème, appliquez cette mise à jour, puis activez l’indicateur de trace TF9394. Pour activer l’indicateur de trace TF9394, consultez la section « Plus d’informations ».

Informations sur les mises à jour cumulatives

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

          

Recommandation : Installer la dernière mise à jour cumulative pour SQL Server

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

      

État

Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Informations supplémentaires

Comment activer l’indicateur de trace 9394

Vous pouvez activer l’indicateur de trace 9394 au démarrage ou dans une session utilisateur. Cet indicateur de trace a des effets au niveau global ou au niveau de la session. Pour activer l’indicateur de trace 9394, utilisez la commande DBCC TRACEON ou utilisez –T 9394 comme paramètre de démarrage.

Si DBCC TRACEON\TRACEOFF est utilisé, cela ne régénère pas un nouveau plan mis en cache pour les procédures stockées. Il peut y avoir des plans dans le cache qui ont été créés sans l’indicateur de trace.

Pour plus d’informations sur l’activation ou la désactivation des indicateurs de trace et sur les indicateurs de trace globaux et au niveau de la session, reportez-vous aux rubriques suivantes dans la documentation en ligne de SQL Server :

      

Références

En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.

Exclusion de responsabilité de tiers

Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.