WebLogic ServerのためのFusion Middleware Controlヘルプ

前 次 新規ウィンドウで目次を開く
ここから内容の開始

JDBCモジュール: 構成: トランザクション

構成オプション     

JDBCデータ・ソースのトランザクション・プロトコルは、データ・ソースからの接続が、トランザクション処理中に、どのように扱われるかを決定します。JDBCデータ・ソースのトランザクションはグローバル(XA)または非グローバル(ローカル)のいずれかです。

このページでは、このJDBCデータ・ソースのトランザクション・オプションを定義します。

構成オプション

名前 説明
グローバル・トランザクションのサポート

データ・ソースからの非XA接続がグローバル・トランザクションに参加できるようにするには、このオプションを選択します。

アプリケーションにグローバル・トランザクションが含まれる場合の多くでは、データベース接続の作成にXA JDBCドライバを使用する必要があります。EJB使用時は、このオプションを有効化する必要があります。非XA JDBCドライバ使用時にグローバル・トランザクションのサポートを有効化した場合、トランザクション処理のオプションを選択する必要があります。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCDataSourceParamsBean.GlobalTransactionsProtocol

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

ロギング・ラスト・リソース

ロギング・ラスト・リソース(LLR)トランザクションの最適化を使用して非XA JDBC接続が分散トランザクションに参加できるようにします。「2フェーズ・コミットのエミュレート」のかわりに使用することをお薦めします。

このオプションを選択した場合、接続が使用されるトランザクション・ブランチは、トランザクション内の最後のリソースとして処理され、1フェーズ・コミット操作として処理されます。操作の結果がリソース自身のログ・ファイルに書き込まれ、この結果から、トランザクションの準備フェーズが成功したのか、失敗したのかを判断できます。このオプションはパフォーマンス面で優れており、2フェーズ・コミットをエミュレートする場合に比べてデータの安全性に優れています。

2フェーズ・コミットのエミュレート

JTAを使用して非XA JDBC接続が分散トランザクションへの参加をエミュレートできるようにします。このオプションは、ヒューリスティックな状況に耐えられるアプリケーションでのみ使用してください。

このオプションを選択した場合、接続が使用されるトランザクション・ブランチは、トランザクションの準備フェーズの結果として常に「成功」を戻します。このオプションはパフォーマンス面で優れていますが、データに障害が発生する可能性があります。

1フェーズ・コミット

1フェーズ・コミット・トランザクション処理を使用して非XA JDBC接続が分散トランザクションに参加できるようにします。このオプションを有効化すると、他のリソースはグローバル・トランザクションに参加できません。

XAデータソース・インタフェースを使用

WebLogic ServerでJDBCドライバのXAインタフェースが使用されることを指定します。

データベース接続の作成に使用されるJDBCドライバ・クラスがJDBCドライバのXAバージョンと非XAバージョンの両方を実装している場合、この属性を設定すると、JDBCドライバがXAドライバまたは非XAドライバとして扱われるよう指定できます。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCDriverParamsBean.UseXaDataSourceInterface

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XAトランザクション・タイムアウトの設定

WebLogic ServerがXaTransactionTimeoutの値に基づいてトランザクション・ブランチ・タイムアウトを設定できるようにします。

有効化すると、WebLogic Serverトランザクション・マネージャがXAResource.startの前にXAResource.setTransactionTimeout()を呼び出して、XAトランザクション・タイムアウト値またはグローバル・トランザクション・タイムアウトのいずれかを渡します。

トランザクション・ブランチ・タイムアウトは、XAリソースに対してデフォルトのタイムアウト値を超過して長時間実行されているトランザクションがある場合などに設定します。

ノート:この機能を使用するには、リソース・マネージャ(通常はJDBCドライバ)がjavax.transaction.xa.XAResource.setTransactionTimeout()メソッドをサポートしている必要があります。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.XaSetTransactionTimeout

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XAトランザクション・タイムアウト

トランザクション・ブランチがタイムアウトするように設定する秒数。

設定すると、この値は、XAリソース・マネージャ(通常はJDBCドライバ)におけるXAResource.setTransactionTimeout()呼出しのトランザクション・タイムアウト値として渡されます。

この値に0を設定すると、WebLogic Serverトランザクション・マネージャはグローバルWebLogic Serverトランザクション・タイムアウト(秒単位)をメソッドに渡します。

このプロパティを設定する場合には、グローバルWebLogic Serverトランザクション・タイムアウトと同じか、それよりも大きい値にする必要があります。

ノート:トランザクション・ブランチ・タイムアウトを設定できるようにするには、XaSetTransactionTimeoutを有効化する必要があります。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.XaTransactionTimeout

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XA再試行期間

トランザクション・マネージャがリソースに対して回復処理を実行する期間を秒数で指定します。値0を指定すると、再試行は行われません。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.XaRetryDurationSeconds

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XA再試行間隔

XA再試行処理を行う秒間隔(XARetryDurationSecondsが正の値に設定されている場合)。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.XaRetryIntervalSeconds

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

トランザクション完了までXA接続を保持

トランザクションが完了するまで、接続プールからの同じXAデータベース接続をグローバル・トランザクションに関連付けることができるようにします。

これは、XAドライバを使用する接続プールにのみ適用されます。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.KeepXaConnTillTxComplete

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

ローカル・トランザクション後の接続を保持

WebLogic Serverがローカル・トランザクションをコミットするときに、接続を解放するかわりに必要に応じて別の物理接続を取得することで、論理的接続に関連付けられている物理的なデータベース接続を保持できるようにします。

このオプションをtrueに設定すると、データベースでの追加の接続の構成が必要となる場合があります。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCDataSourceParamsBean.KeepConnAfterLocalTx

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

グローバル・トランザクション後の接続を保持

WebLogic Serverがグローバル・トランザクションをコミットするときに、接続を解放するかわりに必要に応じて別の物理接続を取得することで、論理的接続に関連付けられている物理的なデータベース接続を保持できるようにします。

このオプションをtrueに設定すると、データベースでの追加の接続の構成が必要となる場合があります。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCDataSourceParamsBean.KeepConnAfterGlobalTx

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

クローズ時にトランザクション・コンテキストが必要

様々なJDBCオブジェクト(結果セット、文、接続など)が閉じられたときに、XAドライバが分散トランザクション・コンテキストを要求するかどうかを指定します。これは、XAドライバを使用する接続プールにのみ適用されます。

有効化すると、JDBCオブジェクトを閉じるときにスローされるSQL例外のうち、トランザクション・コンテキストがないものが抑制されます。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.NeedTxCtxOnClose

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XAを1回のみ終了

保留中のそれぞれのXAResource.start()で、XAResource.end()が1回のみ呼び出されることを指定します。

このオプションによって、XAドライバがXAResource.end(TMSUSPEND)XAResource.end(TMSUCCESS)を連続して呼び出すことができなくなります。これは、XAドライバを使用するデータ・ソースにのみ適用されます。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

このオプションは非推奨です。値は現在無視されます。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.XaEndOnlyOnce

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

解放時に接続を開いたまま保持

物理XA接続が接続プールに戻されるときに、WebLogic Serverが、グローバル・トランザクションに対して論理JDBC接続を開いたまま保持できるようにします。

データベース接続の作成に使用されるXAドライバまたはDBMSで、物理XA接続が接続プールに戻されてもトランザクション処理が継続している間は論理JDBC接続が開いたまま保持される必要がある場合に、このオプションを選択します。

これは、XAドライバを使用するデータ・ソースにのみ適用されます。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.KeepLogicalConnOpenOnRelease

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

リソース・ヘルス・モニタリング

XAデータ・ソースのJTAリソース・ヘルス監視を有効化します。有効化すると、MaxXACallMillisに指定した期間内にXAリソースがXA呼出しへの応答に失敗すると、データ・ソースに異常があるものとしてマークされ、リソースに対する以降の呼出しがすべてブロックされます。

このプロパティはXAデータ・ソースにのみ適用され、非XAドライバを使用するデータ・ソースでは無視されます。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.ResourceHealthMonitoring

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

1回のみ回復

トランザクション・マネージャがリソース上で回復処理を1回のみ呼び出すことを指定します。これは、XAドライバを使用するデータ・ソースにのみ適用されます。

この設定は、JDBC XAドライバに関する特定の問題を回避するために使用します。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.RecoverOnlyOnce

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

接続が閉じたときにローカル・トランザクションをロールバック

接続が接続プールに戻される前に、WebLogic Serverが接続に対してrollback()を呼び出すことができるようにします。

ロールバック呼出しではデータベース・サーバーと通信する必要があるため、この属性を有効にするとパフォーマンスに影響が出ます。

このオプションは非推奨です。値は現在無視されます。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCXAParamsBean.RollbackLocalTxUponConnClose

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。

XAデバッグ・レベル

XAドライバのJDBCデバッグのレベルを指定します。範囲内で大きな値であればあるほどより多くのデバッグ情報が提供されます。

MBean属性(アプリケーション・モジュールには適用しない):
JDBCConnectionPoolParamsBean.JDBCXADebugLevel

最小値: 0

最大値: 100

変更は、モジュールの再デプロイ後またはサーバーの再起動後に有効になります。


トップに戻る