Symptome
Nehmen Sie folgendes Szenario an:
- Sie verfügen über einen WINDOWS Communication Framework (WCF)-basierten SQL-Adapter in Microsoft BizTalk Server, der in kurzen, regelmäßigen Abständen viele Daten aus einer gespeicherten Prozedur in Microsoft SQL Server abruft.
- Die abgerufenen Daten werden als Dateien in freigegebene Ordner geschrieben.
In diesem Szenario stellen Sie möglicherweise fest, dass nur wenige Dateien nach dem Zufallsprinzip geschrieben werden, da der Empfangsport nicht ausgelöst wird. Im Serverereignisprotokoll werden keine Fehlermeldungen protokolliert, und Sie erhalten keine angehaltenen Nachrichten in BizTalk Server.
Dieses Problem tritt auf, weil der WCF-SQL-Adapter zeitweilig fehlschlägt, wenn eine der folgenden Bedingungen zutrifft:
- Die AmbientTransaction-Eigenschaft ist auf True festgelegt.
- Die ReceiveTimeout-Bindungseigenschaft ist gleich oder kleiner als die Summe des PollingIntervalInSeconds-Werts plus der Zeit, die zum Abfragen der Daten aus SQL Server erforderlich ist.
Lösung
Dieses Problem wurde im folgenden kumulativen Update für BizTalk Server behoben:
Kumulatives Update 4 für BizTalk Server 2016
Kumulatives Update 7 für BizTalk Server 2013 R2
Hinweis Mit diesem Update wird eine neue PollingSqlReceiveTimeout-Eigenschaft eingeführt, die den SQL-Timeoutwert bestimmt. Wenn dieser Wert null ist, wird WCF ReceiveTimeout als PollingSqlReceiveTimeout verwendet.
Status
Microsoft hat bestätigt, dass dies ein Problem bei den Microsoft-Produkten ist, die im Abschnitt „Gilt für“ aufgeführt sind.
Referenzmaterial
Erfahren Sie mehr über Service Pack und kumulative Updateliste für BizTalk Server.
Erfahren Sie mehr über BizTalk Server Hotfixes und unterstützung kumulativer Updates.