KB3138659 - FIX: Rendimiento lento al consultar tipos de datos numéricos de una base de datos Oracle

Se aplica a
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)

Síntomas

Tenga en cuenta el siguiente escenario:

  • Configure un servidor vinculado para tener acceso a una base de datos de Oracle como origen remoto en Microsoft SQL Server 2012 o SQL Server 2014 y use el proveedor de OleDB "Oracle.OleDB" para ese servidor vinculado.
  • Utilice una consulta remota que hace referencia a una tabla de Oracle y esa tabla contiene una o más columnas con el tipo NUMBER propietario de Oracle. Esta tabla también contiene un número significativo de filas.

En este escenario, puede experimentar problemas de rendimiento en comparación con el proveedor de OleDB "MSDAORA" de Microsoft heredado. Este problema se produce debido a la manera en que el proveedor "Oracle.OleDB" notifica el tipo de datos NUMBER a SQL Server.

Resolución

Para resolver este problema, aplique esta actualización y, a continuación, habilite la marca de seguimiento TF9394. Para habilitar la marca de seguimiento TF9394, consulte la sección "Más información".

Información sobre la actualización acumulativa

Este problema se ha corregido en las actualizaciones siguientes:

          

Recomendación: instalar la actualización acumulativa más reciente para SQL Server

Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Consulte las actualizaciones acumulativas más recientes para SQL Server:

      

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Más información

Cómo habilitar la marca de seguimiento 9394

Puede habilitar la marca de seguimiento 9394 en el inicio o en una sesión de usuario. Esta marca de seguimiento tiene efectos a nivel global o de sesión. Para habilitar la marca de seguimiento 9394, use el comando DBCC TRACEON o use –T 9394 como parámetro de inicio.

Si se usa DBCC TRACEON\TRACEOFF, no se regenera un nuevo plan almacenado en caché para los procedimientos almacenados. Podría haber planes en la memoria caché que se crearon sin la marca de seguimiento.

Para obtener más información acerca de cómo habilitar o deshabilitar marcas de seguimiento y de nivel de sesión, consulte los temas siguientes en los libros en pantalla de SQL Server:

      

Referencias

Obtenga información sobre la terminología que usa Microsoft para describir las actualizaciones de software.

Aviso de declinación de responsabilidades sobre la información de terceros

Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.