メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

この資料が適用される製品を表示する。

現象

Java アプリケーションで XA トランザクションを使用していて、SQL Server のインスタンスにインストールされている SQL Server (sqljdbc_xa) の Microsoft JDBC ドライバーのバージョンが4.2.6420.100 または 6.0.7507.10の場合は、sql server のプロセスがクラッシュするまで、イベントハンドルカウントは増え続けます。 SQL Server プロセスのイベントハンドルカウントを確認するには、タスクマネージャーを起動し、[ 詳細 ] タブをクリックします。 SQL Server カーネルリソースが使い果たされた場合、次のエントリがアプリケーションイベントログに記録されることがあります。

Log Name: Application
Source: Microsoft-Windows-Complus
Date:  date time
Event ID: 4689
Task Category: (8)
Level: Error
Keywords: Classic
User: N/A
Computer: computer_name
Description:
The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Error in COM\complus\src\inc\UTSem.H(100), Insufficient system resources exist to complete the requested service.

: CreateEvent returned a NULL handle 

原因

この問題は、クラスによって DTC ITransaction インスタンスが作成され、停止時にインスタンスが解放されない場合に発生します。 クラスが何度も呼び出されると、SQL Server のインスタンスでハンドルリークの問題が発生します。

解決方法

この問題を解決するには、既存の sqljdbc_xa .dll ドライバーを置き換えます。

JDBC ドライバー4.2

これを行うには、Microsoft ダウンロードセンターから、更新された MICROSOFT JDBC Driver 4.2 FOR SQL Server (sqljdbc_xa) パッケージをダウンロードしてインストールします。 注意事項

  • 更新されたパッケージのバージョン番号は 4.2.8112.100です。

  • 更新された sqljdbc_xa .dll ドライバーを使うことができるように、既存のクライアント側のライブラリファイル (sqljdbc41 または sqljdbc42) を置き換える必要はありません。

 

JDBC ドライバー6.0

これを行うには、Microsoft ダウンロードセンターから、 更新された MICROSOFT JDBC Driver 6.0 FOR SQL Server (sqljdbc_xa) パッケージをダウンロードしてインストールします。  

注意事項

  • 更新されたパッケージのバージョン番号は 6.0.8112.100です。

  • 更新された sqljdbc_xa .dll ドライバーを使うことができるように、既存のクライアント側のライブラリファイル (sqljdbc41 または sqljdbc42) を置き換える必要はありません。

詳細情報

この問題は、SQL Server バージョン4.2.6420.100 の JDBC ドライバーで導入されました。また、バージョン6.0.7507.10 にも存在します。 この問題は、SQL Server バージョン6.0.7728.100 と 6.0.8112.100用の JDBC ドライバーで修正されています。 この修正プログラムは、インスタンスが停止したときに DTC ITransaction インスタンスを解放します。

状態

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

関連情報

ソフトウェアの更新を説明するために Microsoft が使用する 用語 について説明します。

適用対象

この資料は、以下を対象としています。

  • Microsoft JDBC Driver 4.2 および SQL Server 用の6.0 は、次のように使用されます。

    • Microsoft SQL Server 2016

    • Microsoft SQL Server 2014

    • Microsoft SQL Server 2012

    • Microsoft SQL Server 2008 R2

    • Microsoft SQL Server 2008

    • Microsoft SQL Server 2005

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×