Symptômes
Prenons le scénario suivant :
- Vous disposez d’un adaptateur SQL windows Communication Framework (WCF) dans Microsoft BizTalk Server qui récupère un grand nombre de données à intervalles courts et réguliers à partir d’une procédure stockée dans Microsoft SQL Server.
- Les données récupérées sont écrites sous forme de fichiers dans des dossiers partagés.
Dans ce scénario, vous remarquerez peut-être que seuls quelques fichiers sont écrits de manière aléatoire, car le port de réception ne se déclenche pas. Aucun message d’erreur n’est enregistré dans le journal des événements du serveur et vous ne recevez aucun message suspendu dans BizTalk Server.
Ce problème se produit car l’adaptateur WCF-SQL échoue par intermittence si l’une des conditions suivantes est remplie :
- La propriété AmbientTransaction a la valeur True.
- La propriété de liaison ReceiveTimeout est égale ou inférieure au total de la valeur PollingIntervalInSeconds plus le temps nécessaire pour interroger les données à partir de SQL Server.
Résolution
Ce problème est résolu dans la mise à jour cumulative suivante pour BizTalk Server :
Mise à jour cumulative 4 pour BizTalk Server 2016
Mise à jour cumulative 7 pour BizTalk Server 2013 R2
Note Cette mise à jour introduit une nouvelle propriété PollingSqlReceiveTimeout qui détermine la valeur du délai d’attente SQL. Si cette valeur est égale à zéro, WCF ReceiveTimeout est utilisé comme PollingSqlReceiveTimeout.
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».
Références
Découvrez le Service Pack et la liste des mises à jour cumulatives pour BizTalk Server.
Découvrez les correctifs BizTalk Server et la prise en charge des mises à jour cumulatives.