Windows Server 2003 または Windows XP Professional x64 Edition でコミットするために、SQL Server 2008 のトランザクションで FileStream アクセスをファイル ハンドルを使用すると、トランザクションが失敗ランダムに

文書翻訳 文書翻訳
文書番号: 955280 - 対象製品
すべて展開する | すべて折りたたむ

目次

現象

コンピューター上で Windows Server 2003 を実行するがかを使用して、OpenSqlFilestream API または .NET SqlFilestream クラスは、Microsoft SQL Server 2008 で、トランザクションのトランザクションで FileStream アクセスのファイル ハンドルを取得する、Windows XP Professional x64 Edition コミットにランダムに失敗します。 この問題が発生した次のエラーのいずれかが、SQL Server エラー ログ ファイルに記録されます。
  • 3910 (トランザクション コンテキストは別のセッションで使用)
  • 3981 (、トランザクション操作を実行できません保留中の要求がこのトランザクションで作業しているため、)
  • 3922 (できないトランザクションに参加は、トランザクションが存在しないため)
この問題の原因に SQL Server 2008 の FILESTREAM 機能は、関係のないです。 ただしには、通常遭遇するこの問題 SQL Server 2008 で FILESTREAM 機能を使用するとします。

原因

この問題は、Server サービスでエラーのために発生します。 Server サービスが誤ってファイルを閉じて遅延処理します。 したがって、SQL Server 2008 コミット操作を実行することはできません。

解決方法

修正プログラムについて

Windows Server 2003

サポートされている修正プログラムを Microsoft から入手可能なようになりました。 ただし、これはするためのもの、この資料に記載されている問題のみを修正です。 この特定の問題が発生しているシステムにのみ適用します。 この修正プログラム テストを受ける可能性があります。 そのため場合この問題で深刻な影響を受けていないお勧めしますこの修正プログラムを含む、次回ソフトウェアの更新されるまで待つことです。

この問題を直ちに解決するには、顧客サポート マイクロソフトに連絡の修正プログラムを入手します。 カスタマー サポート サービスの電話番号およびサポートのコストに関する情報の完全な一覧、については、次の Web マイクロソフトを参照してください。
http://support.microsoft.com/contactus/?ws=support
メモ 特殊な場合は、Microsoft Support 担当者により、特定の更新は問題が解決される場合料金がサポート通常発生する可能性があります取り消されます。 通常のサポート料金が追加の質問および問題の特定のアップデートの対象とならない問題について適用されます。
前提条件
実行してこの修正プログラムを適用している必要があります Windows Server 2003 Service Pack 1、Windows Server 2003 Service Pack 2、Windows XP Professional x64 Edition または Windows XP Professional x64 Edition Service Pack 2 コンピューターにします。
再起動の要件
この修正プログラムを適用した後、コンピューターを再起動するとして必要。
修正プログラム置き換えに関する情報
修正プログラムをこの適用置き換えはられることに以前にリリースされた修正プログラムありません。
ファイル情報
英語版のこの修正プログラムにファイルの属性 (またはそれ以降のファイル属性) 次の表は、されている可能性もします。 日付およびこれらのファイルの時間で世界協定時刻 (UTC) と記載します。 各ファイルの日付および時刻は、世界協定時刻 (UTC) で示されています。 UTC と現地時刻の差を検索するには、コントロール パネルの [ 日付と時刻 タイム ゾーン タブを使用します。

Windows Server 2003 Service Pack 1 で、x 86 ベースのバージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.3177361,4722008 年 7 月 18 日10: 15x86

Windows Server 2003 Service Pack 1 で 、 x64-ベース バージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.3177674,8162008 年 7 月 21 日07: 32x64
Windows Server 2003 Service Pack 1、Itanium ベースのバージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.31771,110,5282008 年 7 月 21 日07: 3264

Windows Server 2003 Service Pack 2 で、x 86 ベースのバージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.4337358,4002008 年 7 月 18 日12: 04x86

Windows Server 2003 Service Pack 2 で、x の x64 ベース バージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.4337648,1922008 年 7 月 21 日14: 57x64

Windows Server 2003 Service Pack 2、Itanium ベースのバージョン
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.43371,111,5522008 年 7 月 21 日14: 5464

Windows XP Professional x64 Edition

サポートされている修正プログラムを Microsoft から入手可能なようになりました。 ただし、これはするためのもの、この資料に記載されている問題のみを修正です。 この特定の問題が発生しているシステムにのみ適用します。 この修正プログラム テストを受ける可能性があります。 そのため場合この問題で深刻な影響を受けていないお勧めしますこの修正プログラムを含む、次回ソフトウェアの更新されるまで待つことです。

この問題を直ちに解決するには、顧客サポート マイクロソフトに連絡の修正プログラムを入手します。 カスタマー サポート サービスの電話番号およびサポートのコストに関する情報の完全な一覧、については、次の Web マイクロソフトを参照してください。
http://support.microsoft.com/contactus/?ws=support
メモ 特殊な場合は、Microsoft Support 担当者により、特定の更新は問題が解決される場合料金がサポート通常発生する可能性があります取り消されます。 通常のサポート料金が追加の質問および問題の特定のアップデートの対象とならない問題について適用されます。
前提条件
実行してこの修正プログラムを適用している必要があります Windows XP Professional x64 Edition または Windows XP Professional x64 Edition Service Pack 2 コンピューターにします。
再起動の要件
この修正プログラムを適用した後、コンピューターを再起動するとして必要。
修正プログラム置き換えに関する情報
修正プログラムをこの適用置き換えはられることに以前にリリースされた修正プログラムありません。
ファイル情報
英語版のこの修正プログラムにファイルの属性 (またはそれ以降のファイル属性) 次の表は、されている可能性もします。 日付およびこれらのファイルの時間で世界協定時刻 (UTC) と記載します。 各ファイルの日付および時刻は、世界協定時刻 (UTC) で示されています。 UTC と現地時刻の差を検索するには、コントロール パネルの [ 日付と時刻 タイム ゾーン タブを使用します。

Windows XP Professional x64 Edition
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.3177674,8162008 年 7 月 21 日07: 32x64

Service Pack 2 で Windows XP Professional x64 Edition
元に戻す全体を表示する
ファイル名ファイルのバージョンファイルのサイズ日付時間プラットフォーム
Srv.sys5.2.3790.4337648,1922008 年 7 月 21 日14: 57x64

回避策

重要です このセクション、メソッド、またはタスク、レジストリを変更する方法を説明する手順がされています。 ただし、深刻な問題のレジストリを誤って変更する場合が発生する可能性があります。 このため、これらの手順を慎重に実行することを確認します。 追加の保護、するため、レジストリのバックアップを変更する前に。 問題が発生した場合に、レジストリを復元できます。 バックアップおよびレジストリを復元する方法の詳細についてはをクリックして次資料「サポート技術情報」(Microsoft Knowledge Base) 資料を参照。
322756バックアップおよび Windows のレジストリを復元する方法
警告 この回避策は、システムでファイルを共有する上で動作している場合、パフォーマンスの問題になります。


この問題を回避するには、Cachedopenlimit レジストリ エントリの値を 0 に設定して、Server サービスを再起動します。 これを行うには、次の手順を実行します。
  1. レジストリ エディタで、次のレジストリ サブキーを見つけます:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters
  2. パラメーター レジストリ サブキーでは、 編集 新規作成 DWORD 値 ] をクリックして、 Cachedopenlimit 、入力 [Enter キーを押します。
  3. 0 には、Cachedopenlimit レジストリ エントリの 10 進値を設定します。
  4. サーバー サービスを再起動します。
メモ 既定では、 Cachedopenlimit レジストリ エントリの値は、設定しなかったにもかかわらず、 5 が。

警告 値を 0 に設定するとすべての共有ファイルのファイル ハンドルは、システムによってキャッシュされません。 これが発生パフォーマンスの問題がシステムで共有ファイルにアクセスします。

状況

マイクロソフトとして認識していますこの問題を記載されているいるマイクロソフト製品の問題。

詳細

この問題では x86 ベースのバージョン x する Windows Server 2008 では Windows XP でも発生します。 Windows Server 2008 でこの問題の詳細についてをクリックして次資料「サポート技術情報」(Microsoft Knowledge Base) 資料を参照。
953263コミットを Windows Server 2008 でデータの破損が発生する、Transact-SQL ステートメントを使用して SQL Server 2008 で FILESTREAM 列で操作すると、ステートメントが失敗ランダムに
x 86 ベースのバージョンでは、Windows XP でこの問題の詳細についてはをクリックして以下「サポート技術情報」(Microsoft Knowledge Base) 資料を参照。
955567FILESTREAM varbinary (最大) SQL Server 2008 での列、Windows XP ベースのコンピューターにデータを追加するとデータの破損が発生します。
ソフトウェア更新の用語の詳細についてはをクリックして以下「サポート技術情報」(Microsoft Knowledge Base) 資料を参照:-
824684マイクロソフトのソフトウェアの更新で使用される一般的な用語の説明

FILESTREAM 記憶域を使用します。

SQL Server 2008 でバイナリ ラージ オブジェクト (BLOB) データ データベース テーブルにデータを格納する VARBINARY(MAX) 型のデータができます。 BLOB データには、ファイル システムにデータを格納する VARBINARY(MAX) FILESTREAM 型のデータもあります。 データのサイズと、データの使用率をかどうか使用するデータベースの記憶領域または FILESTREAM 記憶域が決まります。 次の条件に該当する場合は、 FILESTREAM ストレージを使用考慮してください。
  • 平均で BLOB データを格納するは 1 メガバイト (MB) を超えています。
  • 高速読み取りアクセスが重要です。
  • 中間層アプリケーションのロジックを使用するアプリケーションを開発します。
BLOB データが 1 MB 未満の場合、データベースの記憶域を使用して検討します。 データベースの記憶領域はよりストリーミングのパフォーマンスを頻繁に提供します。

詳細については、次の Microsoft Developer Network (MSDN) Web サイト (英語版) を参照してください:
http://msdn.microsoft.com/en-us/library/bb933993.aspx

プロパティ

文書番号: 955280 - 最終更新日: 2009年1月13日 - リビジョン: 2.0
この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows XP Professional x64 Edition
キーワード:?
kbfix kbqfe kbexpertiseadvanced kbhotfixserver kbautohotfix kbmt kbsurveynew KB955280 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:955280
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com