Simptome
Luați în considerare următorul scenariu:
- Aveți un adaptor SQL bazat pe Windows Communication Framework (WCF) în Microsoft Server BizTalk care preia numeroase date la intervale scurte, regulate, dintr-o procedură stocată în Microsoft SQL Server.
- Datele regăsite sunt scrise ca fișiere în foldere partajate.
În acest scenariu, este posibil să observați că doar câteva fișiere sunt scrise aleator, deoarece portul de primire nu se declanșează. Nu sunt înregistrate mesaje de eroare în jurnalul de evenimente de pe server și nu primiți mesaje suspendate în Server BizTalk.
Această problemă apare deoarece adaptorul WCF-SQL eșuează intermitent dacă este adevărată una dintre următoarele condiții:
- Proprietatea AmbientTransaction este setată la True.
- Proprietatea de legare ReceiveTimeout este egală sau mai mică decât totalul valorii PollingIntervalInSeconds, plus timpul necesar pentru a interoga datele din SQL Server.
Rezolvare
Această problemă este remediată în următoarea actualizare cumulativă pentru Server BizTalk:
Actualizarea cumulativă 4 pentru Server BizTalk 2016
Actualizarea cumulativă 7 pentru Server BizTalk 2013 R2
Notă Această actualizare introduce o nouă proprietate PollingSqlReceiveTimeout care va determina valoarea de expirare SQL. Dacă această valoare este zero, WCF ReceiveTimeout va fi utilizat ca PollingSqlReceiveTimeout.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.
Referințe
Aflați despre pachetul Service Pack și lista de actualizări cumulative pentru Server BizTalk.
Aflați despre remedierile rapide Server BizTalk și suportul pentru actualizările cumulative.