Ovaj članak se odnosi na sledeći proizvod:
-
BizTalk Adapter Pack 2.0
-
BizTalk Adapter Pack 2010
Simptomi
Kada koristite neku od sledeće adaptere koji su uključeni u Microsoft BizTalk Adapter Pack 2.0 ili Microsoft BizTalk Adapter Pack 2010 godine na prijem lokaciju, lokaciju na prijem se neočekivano ponovo pokreće:
-
Windows komunikacije Foundation (WCF)-SQL adaptera
-
Adapter za WCF-Oracle
Pored toga, BizTalk Server naići na ConnectionException izuzetak, a zatim BizTalk server može da ponovo pokrenuti nakon što je jedan od sledećih upozorenja se evidentira u evidenciji aplikacije.
WCF-SQL adaptera
Upozorenje 1
„Adapter „„WCF-SQL”” odrasla poruku o grešci. Detalji”„System.ObjectDisposedException: nije moguće pristupiti objektu rashodovana. Ime objekta: „Transakcija” .na System.Transactions.Transaction.Rollback (Exception e) u Microsoft.Adapters.Sql.SqlAdapterInboundHandler.TryReceive (vremenski interval vremenskog ograničenja, poruka & poruka, IInboundReply & odgovor) u Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.TryReceive (vremenski interval vremenskog ograničenja, poruka & poruka) u System.ServiceModel.Dispatcher.InputChannelBinder.TryReceive (vremenski interval vremenskog ograničenja, RequestContext & requestContext) na System.ServiceModel.Dispatcher.ErrorHandlingReceiver.TryReceive (vremenski interval vremenskog ograničenja, RequestContext & requestContext)”””.
Upozorenje 2
„Adapter „„WCF-SQL”” odrasla poruku o grešci. Detalji”„System.TimeoutException: izuzetka tipa „System.TimeoutException” je thrown.at-(Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired) u Microsoft.Adapters.Sql.ExecutionHelper.ExecuteScalar ("SqlCommand sqlCommand", "TimeoutHelper timeoutHelper") u Microsoft.Adapters.Sql.SqlAdapterInboundHandler.Polling_WaitForMessage (TimeoutHelper timeoutHelper) u Microsoft.Adapters.Sql.SqlAdapterInboundHandler.WaitForMessage (vremenski interval vremenskog ograničenja) u Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage()”””.
WCF-Oracle adaptera
Upozorenje 1
Adapter „WCF-Oracle” podigla poruku o grešci. Detalji „Microsoft.ServiceModel.Channels.Common.ConnectionException: do isteka „00: 02:00” istekla tokom izvršavanja funkcija „WaitForMessage”. ---> System.TimeoutException: do isteka „00: 02:00” istekla tokom izvršavanja funkcija „WaitForMessage”. u Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() u Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (OracleCommand komande, TimeoutHelper timeoutHelper) na Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteNonQuery ("OracleCommand komanda", "OracleCommonExecutionHelper executionHelper") u (Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection) OracleCommonExecutionHelper executionHelper)---kraj praćenje steka unutrašnji izuzetak---u Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection (OracleCommonExecutionHelper executionHelper) u Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper executionHelper) na Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (vremenski interval vremenskog ograničenja) u Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage()”.
Upozorenje 2
Adapter „WCF-Oracle” podigla poruku o grešci. Detalji „System.TimeoutException: do isteka „00: 02:00” istekla tokom izvršavanja funkcija „WaitForMessage”. u Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() u Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (OracleCommand komande, TimeoutHelper timeoutHelper) na Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteScalar ("OracleCommand komanda", "OracleCommonExecutionHelper executionHelper") u (Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage) OracleCommonExecutionHelper executionHelper, OracleCommonConnectionWrapper veza) u Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper executionHelper) u Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (vremenski interval vremenskog ograničenja) u Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (vremenski interval vremenskog ograničenja) u System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage()”.
Uzrok
Do ovog problema dolazi zato što lokaciju na prijem se neočekivano ponovo pokreće kada metod WaitForMessage generiše izuzetak za TimeoutException . Kada WaitForMessage metod generiše izuzetak za TimeoutException , TryReceive metod se zove i onda WCF-SQL adapter ili adapter za WCF-Oracle razvlaci transakciju. Međutim, operacija: Vraćanje može generisati izuzetak ObjectDisposedException . Stoga, jedan od upozorenja koje su pomenute u odeljku „Simptomi” se generiše.
Rešenje
Kumulativna ispravka informacije
Za BizTalk Adapter paket 2010
Hitna ispravka koja rešava ovaj problem je obuhvaćeno Kumulativna ispravka paket 2 za BizTalk Adapter Pack 2010. Za više informacija o tome kako da nabavite ovaj paket kumulativnoj ispravci, kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:2572999kumulativni paket za ažuriranje 2 za BizTalk Adapter Pack 2010
Za BizTalk Adapter Pack 2.0
Hitna ispravka koja rešava ovaj problem je obuhvaćeno Kumulativna ispravka paketa 3 za BizTalk Adapter Pack 2.0. Za više informacija o tome kako da nabavite paket kumulativnoj ispravci, kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:
2557150 Kumulativna ispravka paketa 3 za BizTalk Adapter Pack 2.0Napomena Ova hitna ispravka dodaje < TraceIdentifier > i < / TraceIdentifier > oznake koje su potrebne u datoteci WCF praćenje (.svcLog). Nakon što hitna ispravka dodaje ove oznake, izlaz u trag datoteke će biti ispravljena i servis traga Viewer (SvcTraceViewer.exe) otvoriće se alatka za velike datoteke za praćenje WCF brže. Sledeće :: Exit tragove nedostaje < TraceIdentifier > i < / TraceIdentifier > oznake prije primjene ova hitna ispravka: < opis > ExecuteNonQuery::Exit < / opis >< opis > OpenConnection::Exit < / opis >< opis > ExecuteScalar::Exit < / opis >< opis > Polling_WaitForMessage::Exit < / opis >
Status
Microsoft je potvrdio da je ovo problem kod Microsoft proizvoda koji su navedeni u odeljku „Odnosi se na”.
Više informacija
Za više informacija o načinu IInputChannel.WaitForMessage , posetite sledeću MSDN Web lokaciji:
Opšte informacije o metodi IInputChannel.WaitForMessageZa više informacija o načinu IInputChannel.TryReceive , posetite sledeću MSDN Web lokaciji:
Opšte informacije o metodi IInputChannel.TryReceiveZa više informacija o hitnim ispravkama BizTalk Server, kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:
2003907 Informacije o hitnim ispravkama BizTalk Server