原典情報: $ORACLE_HOME/ucp/Readme.txt
目次
全プラットフォーム
[ORACLE_HOME]/ucp/libには、次のファイルが含まれています。
ucp.jar
JDK 5.0およびJDK 6用のクラス。スタンドアロンのUCP/JDBCアプリケーション用の組込みJDBCプール・アダプタ・クラスのみでなく、ユニバーサル接続プール・クラスも含まれています。
ucpdemos.jar
JDK 5.0およびJDK 6用のクラス。ユニバーサル接続プールのデモとコード・サンプル、サンプルのロギング構成、および高速接続フェイルオーバーのクイック・スタート・ツールキットが含まれています。
Javadoc / Documentation / Demo:
すべてOTNからダウンロードできます。
Oracle Installerにより、ユニバーサル接続プールのファイルが[ORACLE_HOME]/ucpディレクトリに配置されます。
Windowsプラットフォームの場合
CLASSPATHに[ORACLE_HOME]\ucp\lib\ucp.jarを追加します。
すべてのUNIXプラットフォームの場合
CLASSPATHに[ORACLE_HOME]/ucp/lib/ucp.jarを追加します。
UCPはDB2やSQLServerなどのOracle以外のデータベースのみでなく、11.1や10gデータベースなど、以前のOracle Databaseでも機能します。JDBCドライバおよびベンダーのデータベース・バージョンなど、UCPの完全な動作要件はOTNを参照してください。
UCPの接続アフィニティ機能(Webセッション・ベースのアフィニティおよびトランザクション・ベースのアフィニティ)は、Oracle Real Application Clusters(RAC)11.1以上で使用するように設計されています。これは、これらの機能が11g RACデータベースの機能を活用して設計されているためです。これらのUCP機能は、以前のバージョンのRACでは正常に機能しない可能性があります。
UCPの接続ラベル付け機能を使用していて、高速接続フェイルオーバーとRACのロード・バランシング・アドバイザを有効にしている場合は、接続ラベル付けよりもランタイム接続ロード・バランシング(RCLB)が優先されることに注意してください。つまり、RACが有効化されている環境では、UCPのRCLBの方が、一般的な接続ラベル付け機能よりパフォーマンス特性が優れています。
XA(グローバル・トランザクション)および高速接続フェイルオーバー(FCF)を使用しているアプリケーションの場合、oracle.ucp.jdbc.ValidConnectionのメソッドisValid()は、メソッドから戻される際のパフォーマンスが最適でない場合があります。これは、FCFが有効化された状態でUCPのPoolXADataSourceを使用している場合に発生します。これが予測されるのは、JDBCのOracle Bug#7314006が原因です。
回避策: この不具合はisValid APIの正確性には影響しません。接続の妥当性を確認するために、アプリケーションでかわりに、XAException catchブロック内にXAException.XAER_RMERRがあるかどうかを確認することもできます。
組込みプール・アダプタPoolDataSourceおよびPoolXADataSourceを使用しているアプリケーションでは、プールを使用すると、指定された接続ファクトリに、接続URL、ホスト、ポートなどのプロパティを実行時に動的に設定できます。ただし、接続URLを除くその他の接続ファクトリ・プロパティの設定時に、プールはリフレッシュされません。これは、標準の接続ファクトリ・プロパティ(たとえば、user、password、portNumber、databaseNameなどを含むjavax.sql.DataSourceのプロパティ)と、接続ファクトリに固有のカスタマイズ・プロパティの両方に当てはまります。
回避策: プールに接続が移入された後は、アプリケーションで重要な接続ファクトリ・プロパティの動的設定を回避する必要があります。これを回避できない場合は、すべての動的プロパティが設定された後に、アプリケーションで明示的にプールのリフレッシュを実行できます。