Tento článek se týká následujících produktů:
-
BizTalk adaptér Pack 2.0
-
BizTalk adaptér Pack 2010
Příznaky
Při použití následující adaptéry, které jsou zahrnuty v Microsoft BizTalk adaptér Pack 2.0 nebo Microsoft BizTalk adaptér Pack 2010 v přijímání umístění přijímání umístění se neočekávaně restartuje:
-
Windows Communication Foundation (WCF)-adaptér SQL
-
Adaptér WCF Oracle
Navíc BizTalk Server může dojít k výjimce ConnectionException a potom restartování BizTalk server jednu následující upozornění je zaznamenána v protokolu aplikace.
Adaptér WCF SQL
Upozornění: 1
"Adaptér""WCF-SQL" "aktivována chybová zpráva. Podrobnosti o "" System.ObjectDisposedException: Nelze získat přístup k objektu vyřazený. Název objektu: "Transakcí".at System.Transactions.Transaction.Rollback (výjimka e) v Microsoft.Adapters.Sql.SqlAdapterInboundHandler.TryReceive (časový interval časového limitu, zprávy & zprávy IInboundReply & odpovědi) na Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.TryReceive (časový interval časového limitu, zprávy & zprávy) v System.ServiceModel.Dispatcher.InputChannelBinder.TryReceive (časový limit TimeSpan, RequestContext & Třída requestContext) v System.ServiceModel.Dispatcher.ErrorHandlingReceiver.TryReceive (časový limit TimeSpan, RequestContext & requestContext) "". "
Upozornění 2
"Adaptér""WCF-SQL" "aktivována chybová zpráva. Podrobnosti o "" System.TimeoutException: výjimce typu 'System.TimeoutException' byl (thrown.at Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired) v Microsoft.Adapters.Sql.ExecutionHelper.ExecuteScalar (SqlCommand, sqlCommand, TimeoutHelper timeoutHelper) v Microsoft.Adapters.Sql.SqlAdapterInboundHandler.Polling_WaitForMessage (TimeoutHelper timeoutHelper) v Microsoft.Adapters.Sql.SqlAdapterInboundHandler.WaitForMessage (časový interval časového limitu) v Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (časový interval časového limitu) na System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (časový interval časového limitu) na System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage()"". "
WCF Oracle adaptér
Upozornění: 1
Adaptér "WCF-Oracle" aktivována chybová zpráva. Podrobnosti o "Microsoft.ServiceModel.Channels.Common.ConnectionException: časový limit" 00: 02:00 "při provádění funkce"Časový limit WaitForMessage". ---> System.TimeoutException: časový limit "00: 02:00" při provádění funkce "Časový limit WaitForMessage". na Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() v Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (příkaz OracleCommand, TimeoutHelper timeoutHelper) v Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteNonQuery (příkaz OracleCommand, OracleCommonExecutionHelper, executionHelper) na Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection () OracleCommonExecutionHelper executionHelper)---konec trasování zásobníku vnitřní výjimky---v Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection (OracleCommonExecutionHelper, executionHelper) na Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper, executionHelper) v Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (časový interval časového limitu) na Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (časový interval časového limitu) v System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (časový interval časového limitu) na System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage() ".
Upozornění 2
Adaptér "WCF-Oracle" aktivována chybová zpráva. Podrobnosti o "System.TimeoutException: časový limit" 00: 02:00 "při provádění funkce"Časový limit WaitForMessage". na Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() v Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (příkaz OracleCommand, TimeoutHelper timeoutHelper) v Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteScalar (příkaz OracleCommand, OracleCommonExecutionHelper, executionHelper) na Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage () ExecutionHelper OracleCommonExecutionHelper, OracleCommonConnectionWrapper připojení) na Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper, executionHelper) na Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (časový interval časového limitu) v Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (časový interval časového limitu) na System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (časový interval časového limitu) na System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage() ".
Příčina
K tomuto problému dochází, protože umístění příjmu dojde k neočekávanému restartování při časový limit WaitForMessage metoda generuje TimeoutException výjimka. Pokud časový limit WaitForMessage metoda generuje TimeoutException výjimka, TryReceive metoda je volána a potom adaptér WCF SQL nebo WCF Oracle adaptér vrácena zpět transakcí. Vrácení operace však může generovat ObjectDisposedException výjimka. Proto jeden z varování, které jsou uvedeny v části "Příznaky" je generován.
Řešení
Informace o kumulativní aktualizaci
Pro BizTalk Adapter Pack 2010
Oprava hotfix, která řeší tento problém je zahrnuta v balíčku kumulativní aktualizace 2 pro rok 2010 Pack adaptéru BizTalk. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:2572999balíček kumulativní aktualizace 2 pro rok 2010 Pack adaptér BizTalk
Pro BizTalk Adapter Pack 2.0
Oprava hotfix, která řeší tento problém je zahrnuta v balíčku kumulativní aktualizace 3 pro BizTalk adaptér Pack 2.0. Další informace o tom, jak získat balíček kumulativní aktualizace, získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2557150 Balíček kumulativní aktualizace 3 pro BizTalk adaptér Pack 2.0PoznámkaTato oprava hotfix přidá < TraceIdentifier > a < / TraceIdentifier > značky, které jsou vyžadovány v souboru trasování WCF (.svcLog). Po opravě hotfix přidá tyto značky, je opraven výstup v trasovací soubory a nástroj Prohlížeč trasování služby (SvcTraceViewer.exe) velké soubory trasování WCF otvírá rychleji. Následující :: konec stopy postrádají < TraceIdentifier > a < / TraceIdentifier > tagy před instalací této opravy hotfix: < Popis > ExecuteNonQuery::Exit < / Popis >< Popis > OpenConnection::Exit < / Popis >< Popis > ExecuteScalar::Exit < / Popis >< Popis > Polling_WaitForMessage::Exit < / Popis >
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Další informace o metodě IInputChannel.WaitForMessage naleznete na následujícím webu MSDN:
Obecné informace o metodě IInputChannel.WaitForMessageDalší informace o metodě IInputChannel.TryReceive naleznete na následujícím webu MSDN:
Obecné informace o metodě IInputChannel.TryReceiveDalší informace o opravách hotfix serveru BizTalk Server klepněte na následující číslo článku databáze Microsoft Knowledge Base:
2003907 Informace o opravách hotfix serveru BizTalk Server