Síntomas
Imagine el siguiente escenario:
-
You tiene un adaptador de Windows Communication Framework WCF basado en SQL en Microsoft BizTalk Server que recupera gran cantidad de datos a intervalos cortos y regulares desde un procedimiento almacenado de Microsoft SQL Server.
-
Los datos recuperados se escriben como archivos en carpetas compartidas.
En este escenario, puede observar que sólo unos pocos archivos se escriben aleatoriamente porque el recibir no se activa el puerto. No hay mensajes de error se registran en el registro de sucesos del servidor y no es necesario recibir mensajes suspendidos en BizTalk Server.
Este problema se produce porque el adaptador WCF-SQL falla de forma intermitente si se cumple alguna de las condiciones siguientes:
-
La propiedad AmbientTransaction se establece en True.
-
La propiedad ReceiveTimeout del enlace es igual a o menor que el total del valor PollingIntervalInSeconds más el tiempo necesario para consultar los datos de SQL Server.
Solución
Este problema se corrigió en la siguiente actualización acumulativa para BizTalk Server:
Actualización acumulativa 4 para BizTalk Server 2016
Actualización acumulativa 7 para 2013 R2 de BizTalk Server
Nota: Esta actualización introduce una nueva propiedad de PollingSqlReceiveTimeout que determinará el valor de tiempo de espera SQL. Si este valor es cero, WCF ReceiveTimeout se utilizará como PollingSqlReceiveTimeout.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Referencias
Obtenga información acerca de los service pack y la lista de la actualización acumulativa para BizTalk Server.
Obtenga información acerca de revisiones de BizTalk Server y compatibilidad con la actualización acumulativa.