Ознаки
Нижче описано такий сценарій.
- У вас є адаптер SQL на базі Windows Communication Framework (WCF) у Microsoft BizTalk Server, який отримує багато даних через короткі регулярні проміжки часу зі збереженої процедури в Microsoft SQL Server.
- Отримані дані буде записано як файли в спільні папки.
У цьому сценарії ви можете помітити, що лише кілька файлів записуються випадковим чином, оскільки порт прийому не спрацьовує. У журналі подій сервера не реєструються повідомлення про помилки, і ви не отримуєте жодних призупинених повідомлень на сервері BizTalk Server.
Ця проблема виникає тому, що адаптер WCF-SQL час від часу виходить з ладу, якщо виконується одна з наведених нижче умов.
- Властивість AmbientTransaction має значення True.
- Властивість зв'язування ReceiveTimeout дорівнює або менша за суму значення PollingIntervalInSeconds плюс час, необхідний для запиту даних у SQL Server.
Спосіб усунення проблеми
Цю проблему вирішено в такому сукупному оновленні для BizTalk Server:
Сукупний пакет оновлень 4 для BizTalk Server 2016
Сукупний пакет оновлень 7 для BizTalk Server 2013 R2
Примітка У цьому оновленні вводиться нова властивість PollingSqlReceiveTimeout , яка визначає значення часу очікування SQL. Якщо це значення дорівнює нулю, WCF ReceiveTimeout буде використовуватися як PollingSqlReceiveTimeout.
Стан
Корпорація Microsoft підтвердила, що це одна з проблем з продуктами Microsoft, перелічених у розділі "Застосовується до".
Посилання
Дізнайтеся про пакет оновлень і сукупний список оновлень для BizTalk Server.
Дізнайтеся про виправлення для BizTalk Server і підтримку сукупних оновлень.