狀況
假設您啟用 AlwaysOn 可用性群組中的 Microsoft SQL Server 2014年執行個體。主要的複本成為作用中交易時,您就會執行可用性群組錯誤後移轉。然後,您會收到下列的 3303 警告訊息︰
遠端強化交易的 '%* ls' (0x %016i64x 的 ID 0 %1 !) 在 %1 在資料庫' %1 ! ' 於 LSN %3 無法啟動。
在此情況下,下列的資料驅動程式或提供者無法攔截的 「 遠端強化失敗 」 的例外狀況︰
-
SQL Server 4.0 的 Microsoft JDBC 驅動程式
-
SQL Server 的 OLE DB 驅動程式
-
OLE DB 的原生 SQL Server 用戶端
因此,使用這些驅動程式或提供者的用戶端應用程式並不知道交易的 「 疑問。""確定"交易表示可能已認可並強化成功,磁碟或它是已中止,並由 SQL Server 會復原。如果此"確定"交易已復原的這些驅動程式或提供者仍然可能會將因為他們無法擷取例外狀況,為順利認可的交易。這可能會造成應用程式資料不一致問題。
注意下列的連接提供者可以擷取 「 遠端強化失敗 」 的例外狀況,以 「 疑問 」 交易︰-
SQL Server 的 Microsoft ODBC 驅動程式
-
SQL Server 原生用戶端 (ODBC)
解決方案
下列的累積更新 SQL Server 的第一次修正這個問題。
SQL Server 2014年累積更新 5/en-us/help/3011055
Hotfix 資訊此 hotfix 會引入新的追蹤旗標 3923。追蹤旗標可讓 SQL Server 3303 警告訊息,就會引發時所擲回例外狀況的應用程式。
您套用此 hotfix 之後,您必須啟用此追蹤旗標,要解決這個問題。Hotfix 和追蹤旗標,應用程式也需要實作驗證程式碼,以檢查交易是否要復原或認可之後時才會捕捉例外狀況。 支援的 hotfix 可從 Microsoft 取得。不過,此 Hotfix 僅用於修正本文中所述的問題。此 Hotfix 只適用於發生此特定問題的系統上。 如果 Hotfix 可供下載,在此知識庫文件頂端將出現<有可用的 Hotfix 供您下載>區段。如果這個區段不會出現,將要求提交給 Microsoft 客戶服務及支援取得 Hotfix。 注意如果發生其他問題,或如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題和此特定 hotfix 無法解決的問題。如 Microsoft 客戶服務及支援的電話號碼或建立個別的服務要求的完整清單,請造訪下列 Microsoft 網站︰http://support.microsoft.com/contactus/?ws=support注意「 可下載 Hotfix 」表單會顯示 hotfix 可用的語言。如果看不到您的語言,是因為未提供該語言的 Hotfix 。
重新啟動需求您不必套用此 hotfix 之後,重新啟動電腦。
狀態
Microsoft 已確認這是<套用>一節所列出的 Microsoft 產品的問題。