Sintomas
Tenha em conta o seguinte cenário:
- Tem um adaptador SQL baseado no Windows Communication Framework (WCF) no Microsoft BizTalk Server que obtém muitos dados em intervalos curtos e regulares de um procedimento armazenado no Microsoft SQL Server.
- Os dados obtidos são escritos como ficheiros em pastas partilhadas.
Neste cenário, poderá reparar que apenas alguns ficheiros são escritos aleatoriamente porque a porta de receção não é acionada. Não são registadas mensagens de erro no registo de eventos do servidor e não recebe mensagens suspensas no BizTalk Server.
Este problema ocorre porque o adaptador WCF-SQL falha intermitentemente se uma das seguintes condições for verdadeira:
- A propriedade AmbientTransaction está definida como Verdadeiro.
- A propriedade de enlace ReceiveTimeout é igual ou inferior ao total do valor PollingIntervalInSeconds mais o tempo necessário para consultar os dados de SQL Server.
Resolução
Este problema foi corrigido na seguinte atualização cumulativa para BizTalk Server:
Atualização Cumulativa 4 para BizTalk Server 2016
Atualização Cumulativa 7 para BizTalk Server 2013 R2
Nota Esta atualização apresenta uma nova propriedade PollingSqlReceiveTimeout que determinará o valor de tempo limite do SQL. Se este valor for zero, o RECEIVETimeout do WCF será utilizado como PollingSqlReceiveTimeout.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".
Referências
Saiba mais sobre o service pack e a lista de atualizações cumulativas para BizTalk Server.
Saiba mais sobre BizTalk Server correções e suporte de atualização cumulativa.