本文適用於下列產品:
-
Microsoft BizTalk 配接器套件 2.0
-
Microsoft BizTalk 配接器套件 2010
-
SQL Server 的獨立 WCF 架構的 BizTalk 配接器
徵狀
請試想下列案例:
-
您有正在執行 Microsoft BizTalk Server 2006 R2、 Microsoft BizTalk Server 2009年或 Microsoft BizTalk 伺服器 2010年的電腦。
-
您建立多個接收使用的 Windows 通訊基礎 WCF 為基礎的 SQL 配接器,來存取資料,SQL Server 資料庫中的位置。 例如,您會使用 WCF 自訂配接器與 sqlBinding 繫結型別或 WCF SQL 配接器從 BizTalk 配接器套件 2.0 或 BizTalk 配接器的封包 2010年。
-
您可以指定陳述式中傳回正值的資料列計數的PolledDataAvailableStatement繫結屬性。
-
配接器從 SQL Server 啟動輪詢資料之前,會更新 SQL Server 資料庫。 這使得PolledDataAvailableStatement繫結屬性,傳回 null 值。
在這個案例中,WCF 為基礎的 SQL 配接器可能會超過 30 分鐘鎖定資料庫的 SQL 資源。 這可能會封鎖其他的 SQL 用戶端資料庫上的活動。
原因
因為當輪詢啟動接收資料時,它會開啟交易,就會發生問題。 但當交易不傳回任何資料時,輪詢會繼續尋找在交易內的資料。 這可能會封鎖其他的 SQL 用戶端使用相同的基礎資源。
解決方案
累積更新資訊
BizTalk 配接器套件 2010
Hotfix 可解決這個問題納入 BizTalk 配接器的封包 2010年累積的更新 1。 如需有關如何取得累積更新套件的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文: BizTalk 配接器的封包 2010年, 2539794累積更新套件 1
BizTalk 配接器套件 2.0
累積的更新 2 中會包含可解決這個問題的 hotfix,BizTalk 配接器套件 2.0。 如需有關如何取得累積更新套件,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文的詳細資訊:
2531605 BizTalk 配接器套件 2.0 的累積更新套件 2
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
參考
如需有關如何使用 WCF 通道接收從 SQL 伺服器的 poling 的資料,請造訪下列 MSDN 網頁的詳細資訊: