Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
HiRDBと接続する場合の注意を次に示します。
- HiRDBの自動再接続機能を使用すると,データベースネットワーク障害などでHiRDBサーバとの接続が切断された場合に,コネクションが自動的に再接続されます。ただし,トランザクション中に接続が切断されると,SQLException例外が発生します。J2EEアプリケーションでSQLException例外を受け取ったときには,処理を続行しないでください。続けてDBMSにアクセスするとデータの不整合などの問題が発生するおそれがあります。
- コネクションプール機能とステートメントプーリング機能を有効にして,Statement.cancel()を使用すると,SQLException例外が発生することがあります。この場合,コネクションプール機能,またはステートメントプーリング機能のどちらかを無効にすることをお勧めします。
- J2EEアプリケーションが次の条件をすべて満たす場合は,コネクションが二つ使用され,HiRDBへの接続が同時に利用しているユーザ数の2倍になります。HiRDBのシステム共通定義のpd_max_usersオペランドに,同時に利用しているユーザ数の2倍の値を指定してください。pd_max_usersオペランドについては,マニュアル「HiRDB システム定義」を参照してください。
- トランザクションサポートレベルがXATrasactionのDB Connectorを使用する。
- アプリケーションサーバが管理するトランザクション内でコネクション※を使ってデータベースにアクセスする。
- 2.のトランザクションが決着する前に,トランザクション外でコネクション※を使ってデータベースにアクセスする。
注※ このコネクションは1.のDB Connectorから取得したコネクションで,かつ同一コネクションです。
- J2EEアプリケーションが次の条件をすべて満たす場合は,エラーが発生します。
- トランザクションサポートレベルがXATrasactionのDB Connectorを使用する。
- アプリケーションサーバが管理するトランザクション内でコネクション※を使ってデータベースにアクセスする。
- 2.のトランザクションが決着する前に,トランザクション外でコネクション※を使ってデータベースにアクセスする。
注※ このコネクションは1.のDB Connectorから取得したコネクションで,かつ同一コネクションです。
- 次の条件をすべて満たす場合,同一コネクションを複数の異なるグローバルトランザクションに同時に参加させることはできません。トランザクションごとに使用するコネクションを分けてください。
- トランザクションサポートレベルがXATrasactionのDB Connectorを使用する。
- アプリケーションサーバが管理するトランザクション内でコネクション※を使ってデータベースにアクセスする。
- 2.のトランザクションが決着する前に,トランザクション外でコネクション※を使ってデータベースにアクセスする。
注※ このコネクションは1.のDB Connectorから取得したコネクションで,かつ同一コネクションです。
- HiRDBのコネクション自動再接続機能およびステートメントプール機能を有効にすると,自動再接続機能によってコネクションが再接続されたあとのSQL実行でメッセージ「KFPA11901-E」を含んだSQLException例外が発生することがあります。トランザクションサポートレベルがLocalTransaction,またはNoTransactionのDB Connectorでステートメントプール機能を有効にしてHiRDBに接続する場合は,HiRDBのコネクション自動再接続機能は使用しないでください。障害が発生した場合は,コネクションの障害検知機能,またはcjclearpoolコマンドを実行してください。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.