Síntomas
Imagine la siguiente situación:
-
Use Microsoft SQL Server 2012 o SQL Server 2014 y las herramientas de datos de Microsoft SQL Server (SSDT) para diseñar un paquete de SQL Server Integration Services (SSIS).
-
En la tarea DataFlow, se usa un componente de origen, como el origen de OLE DB, el origen de ADO.NET o el origen ODBC, para establecer el modo de acceso a datos en el comando SQL y escribir una consulta en el cuadro comando.
-
Haga clic en vista previa para ver el resultado de la consulta.
En este escenario, el comando que se muestra en la vista previa se ejecuta durante más de 30 segundos y se produce un error en el diseñador. Además, recibe un error similar a "el tiempo de espera de la consulta ha expirado".
Causa
El problema se produce porque el umbral de CommandTimeout está codificado como 30 segundos para la característica de vista previa en el diseñador SSIS.
Resolución
El problema se solucionó por primera vez en la siguiente actualización acumulativa de SQL Server.
Actualización acumulativa 3 para SQL Server 2014 /en-us/help/2984923
Actualización acumulativa 1 para SQL Server 2012 SP2 /en-us/help/2976982
Actualización acumulativa 10 para SQL Server 2012 SP1 /en-us/help/2954099
Cada actualización acumulativa para SQL Server contiene todas las revisiones y todas las revisiones de seguridad incluidas en la actualización acumulativa anterior. Consulte las últimas actualizaciones acumulativas para SQL Server:
Notas:
-
Antes de aplicar este hotfix, la configuración del tiempo de espera se fija en 30 segundos en la vista previa de los datos de todos los componentes de SSIS.
-
Después de aplicar este Hotfix:
-
Para el componente de origen de ADO.NET y el componente de origen de OLE DB, ya tienen una propiedad CommandTimeout. Esta propiedad se usará en la vista previa de los datos.
-
Para todos los demás componentes que tienen la característica vista previa de datos pero que no tienen la propiedad CommandTimeout :
-
Si hay un valor DWORD DataPreviewTimeout en la clave del registro del sistema:\\HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\SSIS\Preferences SSIS usará ese valor para agotar el tiempo de espera durante la vista previa.
-
Si no hay ningún valor DWORD DataPreviewTimeout, SSIS aún usa 30 segundos.
-
-
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".