MEMPERBAIKI: Menerima lokasi dimulai ulang saat Anda menggunakan adaptor WCF-SQL atau adapter WCF Oracle dalam paket Adapter BizTalk

Artikel ini berlaku untuk produk berikut:

  • Adapter BizTalk paket 2.0

  • Adapter BizTalk paket 2010

Gejala

Ketika Anda menggunakan salah satu dari berikut adaptor yang disertakan dalam Microsoft BizTalk Adapter paket 2.0 atau Microsoft BizTalk Adapter paket 2010 di lokasi terima, terima lokasi tiba-tiba restart:

  • Dasar komunikasi Windows (WCF)-SQL adapter

  • Adapter WCF Oracle

Selain itu, BizTalk Server mungkin mengalami ConnectionException pengecualian, dan kemudian BizTalk server dapat me-restart setelah salah satu dari peringatan berikut dicatat di log aplikasi.

Adapter WCF-SQL

Peringatan 1

"" "WCF-SQL" "adaptor mengangkat pesan galat. Rincian "" System.ObjectDisposedException: tidak dapat mengakses objek dibuang. Nama objek: 'Transaksi'.at System.Transactions.Transaction.Rollback (Exception e) di Microsoft.Adapters.Sql.SqlAdapterInboundHandler.TryReceive (TimeSpan timeout, pesan & pesan, IInboundReply & Balasan) di Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.TryReceive (TimeSpan timeout, pesan & pesan) di System.ServiceModel.Dispatcher.InputChannelBinder.TryReceive (TimeSpan timeout, RequestContext & requestContext) di System.ServiceModel.Dispatcher.ErrorHandlingReceiver.TryReceive (TimeSpan timeout, RequestContext & requestContext) "". "

Peringatan 2

"" "WCF-SQL" "adaptor mengangkat pesan galat. Rincian "" System.TimeoutException: pengecualian jenis 'System.TimeoutException' adalah thrown.at Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired (-) pada Microsoft.Adapters.Sql.ExecutionHelper.ExecuteScalar (SqlCommand sqlCommand, TimeoutHelper timeoutHelper) di Microsoft.Adapters.Sql.SqlAdapterInboundHandler.Polling_WaitForMessage (TimeoutHelper timeoutHelper) di Microsoft.Adapters.Sql.SqlAdapterInboundHandler.WaitForMessage (TimeSpan timeout) di Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage()"". "

Adapter WCF Oracle

Peringatan 1

Adaptor "WCF-Oracle" mengangkat pesan galat. Rincian "Microsoft.ServiceModel.Channels.Common.ConnectionException: batas waktu" 00: 02:00 "kedaluwarsa saat menjalankan fungsi"WaitForMessage". ---> System.TimeoutException: batas waktu "00: 02:00" kedaluwarsa saat menjalankan fungsi "WaitForMessage". di Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() di Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (perintah OracleCommand, TimeoutHelper timeoutHelper) di Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteNonQuery (perintah OracleCommand, OracleCommonExecutionHelper executionHelper) di Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection () OracleCommonExecutionHelper executionHelper)---akhir jejak tumpukan pengecualian bagian dalam---di Microsoft.Adapters.OracleDB.OracleDBConnection.OpenConnection (OracleCommonExecutionHelper executionHelper) di Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper executionHelper) di Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (TimeSpan timeout) di Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage() ".

Peringatan 2

Adaptor "WCF-Oracle" mengangkat pesan galat. Rincian "System.TimeoutException: batas waktu" 00: 02:00 "kedaluwarsa saat menjalankan fungsi"WaitForMessage". di Microsoft.Adapters.AdapterUtilities.TimeoutHelper.GetRemainingTimeoutAndThrowDefaultExceptionMessageIfExpired() di Microsoft.Adapters.OracleCommon.OracleCommonUtils.SetCommandTimeout (perintah OracleCommand, TimeoutHelper timeoutHelper) di Microsoft.Adapters.OracleCommon.OracleCommonUtils.ExecuteScalar (perintah OracleCommand, OracleCommonExecutionHelper executionHelper) di Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage () OracleCommonExecutionHelper executionHelper, sambungan OracleCommonConnectionWrapper) di Microsoft.Adapters.OracleDB.OracleDBInboundContract.Polling_WaitForMessage (OracleCommonExecutionHelper executionHelper) di Microsoft.Adapters.OracleDB.OracleDBInboundContract.WaitForMessage (TimeSpan timeout) di Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.InputChannelBinder.WaitForMessage (TimeSpan timeout) di System.ServiceModel.Dispatcher.ErrorHandlingReceiver.WaitForMessage() ".

Penyebab

Masalah ini terjadi karena terima lokasi tiba-tiba restart saat metode WaitForMessage menghasilkan pengecualian TimeoutException . Apabila metode WaitForMessage menghasilkan pengecualian TimeoutException , metode TryReceive disebut, dan kemudian adapter WCF-SQL atau adapter WCF Oracle gulung kembali transaksi. Namun, operasi rollback akan menghasilkan pengecualian ObjectDisposedException . Oleh karena itu, salah satu dari peringatan yang disebutkan di bagian "gejala" akan dibuat.

Pemecahan Masalah

Informasi pembaruan kumulatif

Adapter BizTalk paket 2010

Perbaikan terbaru yang dapat memecahkan masalah ini disertakan dalam paket pemutakhiran kumulatif 2 untuk BizTalk Adapter Pack 2010. Untuk informasi selengkapnya tentang cara mendapatkan paket pembaruan kumulatif ini, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:2572999paket pemutakhiran kumulatif 2 untuk BizTalk Adapter paket 2010

Adapter BizTalk paket 2.0

Perbaikan terbaru yang dapat memecahkan masalah ini disertakan dalam paket pemutakhiran kumulatif 3 untuk BizTalk Adapter paket 2.0. Untuk informasi selengkapnya tentang cara mendapatkan paket pembaruan kumulatif, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

2557150 Paket pembaruan kumulatif 3 untuk 2.0 paket Adapter BizTalkCatatan Hotfix ini menambahkan < TraceIdentifier > dan < / TraceIdentifier > tag yang diperlukan dalam berkas pelacakan WCF (.svcLog). Setelah hotfix menambahkan tag, output dalam berkas jejak diperbaiki, dan alat penampil jejak Layanan (SvcTraceViewer.exe) membuka file pelacakan WCF besar dengan lebih cepat. Berikut ini :: keluar jejak kekurangan < TraceIdentifier > dan < / TraceIdentifier > tag sebelum Anda menerapkan perbaikan terbaru ini: < Deskripsi > ExecuteNonQuery::Exit < / Deskripsi >< Deskripsi > OpenConnection::Exit < / Deskripsi >< ExecuteScalar::Exit Deskripsi > < / Deskripsi >< Polling_WaitForMessage::Exit Deskripsi > < / Deskripsi >

Status

Microsoft telah melakukan konfirmasi bahwa masalah ini timbul pada produk Microsoft yang tertera pada bagian "Berlaku untuk".

Informasi Selengkapnya

Untuk informasi selengkapnya tentang metode IInputChannel.WaitForMessage , kunjungi website MSDN berikut:

Informasi umum tentang metode IInputChannel.WaitForMessageUntuk informasi selengkapnya tentang metode IInputChannel.TryReceive , kunjungi website MSDN berikut:

Informasi umum tentang metode IInputChannel.TryReceiveUntuk informasi lebih lanjut tentang perbaikan terbaru BizTalk Server, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

2003907 Informasi tentang perbaikan terbaru BizTalk Server

Perlu bantuan lainnya?

Kembangkan keterampilan Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung Microsoft Insider

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×