Oracle® Fusion Middleware

Oracle Coherenceリリース・ノート

12c (12.1.2)

B70748-03(原本部品番号:E28660-04)

2014年1月

このマニュアルには、Oracle Coherence 12c (12.1.2)リリースのリリース・ノートが含まれています。

Oracle Fusion Middleware Oracle Coherenceリリース・ノート, 12c (12.1.2)

B70748-03

Copyright © 2013, 2014 Oracle and/or its affiliates. All rights reserved.

原本著者:  Thomas Pfaeffle

原本協力著者: Noah Arliss、Mark Falco、Alex Gleyzer、Gene Gleyzer、David Guy、Jason Howes、Rob Misek、Parthiban Thilagar、Patrick Peralta

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次のNoticeが適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。

このソフトウェアまたはハードウェアおよびドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

1 技術的な変更と機能強化

- 1.1 最新ソフトウェア・パッチのダウンロードとインストール

- 1.2 Coherenceデータ・グリッドの新機能と改良機能

- 1.3 Oracle Coherence—すべてのプラットフォーム

- 1.4 Oracle Coherence for Java 12c (12.1.2)

- 1.4.1 管理およびモニタリングの機能強化と修正

- 1.4.2 パーティション・キャッシュの機能強化と修正

- 1.4.3 TCMPの機能強化と修正

- 1.4.4 Coherence*Extendフレームワークの機能強化と修正

- 1.4.5 Coherence*Webの機能強化と修正

- 1.4.6 Exabusフレームワークの機能強化と修正

- 1.4.7 シリアライズ・フレームワークの機能強化と修正

- 1.4.8 RESTフレームワークの機能強化と修正

- 1.4.9 構成の機能強化と修正

- 1.4.10 Coherenceコンテナの機能強化と修正

- 1.4.11 その他の機能強化と修正

- 1.5 Oracle Coherence for .NET 12c (12.1.2)

- 1.5.1 パーティション・キャッシュの機能強化と修正

- 1.5.2 Coherence*Extendフレームワークの機能強化と修正

- 1.5.3 Coherence*Webの機能強化と修正

- 1.5.4 その他の機能強化と修正

- 1.6 Oracle Coherence for C++ 12c (12.1.2)

- 1.6.1 パーティション・キャッシュの機能強化と変更

- 1.6.2 Coherence*Extendフレームワークの機能強化と修正

- 1.6.3 その他の機能強化と修正

- 1.7 Coherence 12c (12.1.2.0.1)の新機能、機能強化および修正

- 1.7.1 Coherence 12c (12.1.2.0.1)の新機能

- 1.7.2 Oracle Coherenceの変更および機能強化—すべてのプラットフォーム12c (12.1.2.0.1)

- 1.7.3 Oracle Coherence for Java 12c (12.1.2.0.1)の変更および機能強化

- 1.7.4 Oracle Coherence for .NET 12c (12.1.2.0.1)の変更および機能強化

- 1.7.5 Oracle Coherence for C++ 12c (12.1.2.0.1)の変更および機能強化

- 1.8 既知の問題とその回避策

- 1.8.1 WebLogic Serverのドメイン・サイズ制限

- 1.8.2 GARファイルのデプロイメントで必要なマニフェスト・ファイル

- 1.8.3 CacheFactoryコンソールからのGARファイルのデプロイ

- 1.8.4 LinuxでのJVMのクラッシュ

- 1.8.5 オフセット・エラーによるJVMのクラッシュ

- 1.8.6 Coherenceキャッシュのオーバーライドが機能しない

- 1.8.7 キャッシュ・サイズ・レポートの問題

- 1.9 SpringサポートのCoherenceコミュニティ・プロジェクトへの移動

- 1.10 非推奨となった機能

- 1.10.1 ActiveCache

- 1.10.2 LHストア・マネージャ

- 1.10.3 NamedCache lock API

- 1.10.4 DefaultConfigurableCacheFactoryクラス

- 1.10.5 XmlConfigurableインタフェース

2 ドキュメントの正誤表

- 2.1 Coherence*Extend 12c (12.1.2)の後方互換性の例外

- 2.2 Coherence .NETバージョン番号の変更

- 2.3 デフォルトのニア・キャッシュ無効化戦略の変更

- 2.4 共有ライブラリとしてのGARファイルのデプロイ

- 2.5 GoldenGate Hot CacheにおけるPOFシリアライズの使用

- 2.6 Hibernateの追加のドキュメントによるサポート

- 2.7 Springのドキュメントによるサポートは移動しました

- 2.8 スティッキー・セッションおよびCoherence*Webのロックに関する誤った情報

- 2.9 Coherence*Extendのバージョン互換性に関する記述の改訂

3 Coherence 12c (12.1.2)へのアップグレード

- 3.1 WebLogic ServerでのCoherenceおよびCoherence*Webを使用するアプリケーションのアップグレード

- 3.2 WebLogic ServerでのTopLink Gridを使用するアプリケーションのアップグレード

- 3.2.1 Coherence側の構成のアップグレード

- 3.2.2 アプリケーション・サーバー・スコープ指定されたCoherenceクラスタのアップグレード

- 3.2.3 EARスコープ指定されたCoherenceクラスタのアップグレード

- 3.2.4 WARスコープ指定されたCoherenceクラスタのアップグレード

- 3.3 Coherence*Extendのアップグレード

- 3.4 Coherence*Webのアップグレード

- 3.4.1 以前のバージョンのWebLogic用に予約されているCoherence*Web SPI

- 3.4.2 ActiveCacheの管理対象Coherenceサーバーへの置換え

- 3.4.3 新しいセッション・キャッシュ構成ファイル

- 3.5 WebLogic ServerでのActiveCacheアプリケーションのアップグレード

- 3.6 非推奨となった機能の代替

- 3.6.1 非推奨のpacket-poolおよびmessage-pool要素の代替

- 3.6.2 非推奨のLHファイル・マネージャの代替

- 3.6.3 非推奨のNamedCache Lock APIの代替

- 3.6.4 非推奨のXmlConfigurableインタフェースの代替

- 3.7 アップグレードのその他の問題

- 3.7.1 Exalogic環境のDistributedCacheの新しいデフォルト

- 3.7.2 リモートRMIクライアントからの接続

- 3.7.3 Coherence*Extendクライアント上のキー・アソシエーション

- 3.7.4 ニア・キャッシュの無効化戦略の変更

- 3.7.5 BACKUP CACHE文を使用したキャッシュのシリアライズされた形式の書込み

- 3.7.6 新しいキャッシュ構成要素: resource-config

- 3.7.7 JVMのアップグレード

はじめに

このドキュメントでは、Oracle Coherenceでリリース12.1.2に導入された変更と機能強化について説明します。

対象読者

このドキュメントは、Oracle Coherenceのユーザーを対象としています。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

オラクル社のお客様は、My Oracle Supportを経由して電子的なサポートにアクセスできます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、次のOracle Coherenceドキュメントを参照してください。

- Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発

- Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発

- Oracle Fusion Middleware Oracle Coherenceチュートリアル

- Oracle Fusion Middleware Oracle Coherenceの統合

- Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理

- Oracle Fusion Middleware Oracle Coherenceのマネージメント

- Oracle Fusion Middleware Oracle Coherenceの管理

- Oracle Fusion Middleware Oracle Coherenceの保護

- Oracle Fusion Middleware Oracle Coherence Java APIリファレンス

- Oracle Fusion Middleware Oracle Coherence .NET APIリファレンス

- Oracle Fusion Middleware Oracle Coherence C++ APIリファレンス

表記規則

このドキュメントでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

1 技術的な変更と機能強化

この章では、Oracle Coherence製品で12c (12.1.2)に導入された変更と機能強化について説明します。このドキュメントの内容は、その発行時点において正確です。オラクル社では、ソフトウェアのリリース後、リリース・ノートを定期的に更新しています。

- 最新ソフトウェア・パッチのダウンロードとインストール

- Coherenceデータ・グリッドの新機能と改良機能

- Oracle Coherence—すべてのプラットフォーム

- Oracle Coherence for Java 12c (12.1.2)

- Oracle Coherence for .NET 12c (12.1.2)

- Oracle Coherence for C++ 12c (12.1.2)

- Coherence 12c (12.1.2.0.1)の新機能、機能強化および修正

- 既知の問題とその回避策

- SpringサポートのCoherenceコミュニティ・プロジェクトへの移動

- 非推奨となった機能

1.1 最新ソフトウェア・パッチのダウンロードとインストール

My Oracle Supportにアクセスして、最新のソフトウェア・パッチをダウンロードします。

https://support.oracle.com

パッチで提供されるソフトウェア修正について最新情報を入手する方法は、パッチ配布のREADMEファイルを参照してください。

1. My Oracle Supportにログインします。

2. 「パッチと更新版」タブをクリックします。

3. 「パッチ検索」タブの下で、「製品またはファミリ(拡張検索)」を選択し、「ファミリのすべての製品を含む」チェック・ボックスを選択します。

4. 製品名をOracle Coherenceと入力して、プラットフォームとリリースを選択し、「検索」をクリックします。

Oracle Coherenceで現在使用できるパッチのリストが表示されます。

1.2 Coherenceデータ・グリッドの新機能と改良機能

Oracle Coherence 12c (12.1.2)は、業界をリードする分散型インメモリー・データ・グリッド製品の最新版です。Coherence 12c (12.1.2)には、拡張性の高いソリューションにおける複雑さの削減、統合の簡易化、および開発期間の短縮に役立つ、数多くの新機能が搭載されています。

- 管理対象Coherenceサーバー—管理対象Coherenceサーバーは、WebLogic管理フレームワークを使用して、効率的なアプリケーション開発と管理を実現します。このサーバーには、Coherenceアプリケーションのパッケージ化、デプロイメントおよび使用を最適化するように設計された固有のディレクトリ構造である、グリッド・アーカイブ(GAR)形式が導入されています。さらに、このアーカイブ形式により、アプリケーションの分離およびライフサイクル・イベントが提供されます。また、スタンドアロンのCoherenceのお客様は、WebLogic Serverを所有せずにこの機能を使用できます。詳細は、Oracle WebLogic ServerのためのOracle Coherenceアプリケーションの開発を参照してください。

- ライブ・イベント—Coherenceは、データ・グリッドで実行された操作に対してアプリケーションが対応できるイベント・フレームワークを備えています。このフレームワークは、イベントがクラスタ操作の監視可能な発生を表すイベントベースのモデルを使用します。サポートされているイベントには、パーティション・サービス、キャッシュおよびアプリケーション・イベントが含まれます。これらのイベントは、イベント・インターセプタを登録(プログラムで実行するか、またはキャッシュ構成を使用)して処理できます。ライブ・イベント用の新しいAPIにより、Coherenceでのイベントドリブン・アプリケーションの作成が簡略化されます。Coherenceを使用すると、データを伴うイベント処理をスケーリングできます。これは、モバイルやソーシャルのお客様がリアルタイムの更新を予期している高速データの世界でますます重要になっています。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のライブ・イベントの使用に関する項を参照してください。

- Oracle Coherence GoldenGate HotCache (HotCache)との統合—HotCacheを使用すると、データベースに対する変更をCoherenceキャッシュ内のオブジェクトに伝播できます。データベースに対するサード・パーティの更新により、Coherenceアプリケーションで、最新でない失効した可能性のあるデータが使用されることがあります。HotCacheは、データベースをモニタリングし、変更をCoherenceキャッシュにプッシュすることでこの問題を解決します。HotCacheには、失効したデータのみを処理する効率的なプッシュ・モデルが採用されています。データベースに変更が行われる際にデータがプッシュされるため、待機時間の短さが保証されます。詳細は、『Oracle Fusion Middleware Oracle Coherenceの統合』のOracle Coherence GoldenGate HotCacheとの統合に関する項を参照してください。

- パーティション・サービスの非同期バックアップ—分散キャッシュでは、同期と非同期の両方のバックアップがサポートされています。同期バックアップでは、バックアップ操作が完了するまでクライアントはブロックされます。非同期バックアップでは、バックアップ操作中にクライアントはリクエストへの応答を続行します。非同期バックアップは、通常、クライアントのパフォーマンスを向上させるために使用されます。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』の非同期バックアップの使用に関する項を参照してください。

- 強化されたパーティションの配布—パーティションの配布が強化され、(トポロジが許す場合) backup-count > 1を使用すれば、すべてのバックアップ・コピーが異なるマシン(相互およびプライマリ)にプッシュされます。これにより、backup-count=Nの場合は、データを失うことなく、同時にN個のマシンの障害に耐えられます。

- Extendクライアント用のネーム・サービス—ネーム・サービスは特殊化されたTCPアクセプタで、Extendクライアントでは、プロキシ・サービス・アドレスではなく、プロキシ・サービス名を指定することでプロキシに接続できます。クライアントは、要求されたプロキシの実際のアドレスを提供するネーム・サービス・アクセプタへ接続します。ネーム・サービス・アクセプタを使用することで、キャッシュ構成ファイルを更新することなく、実際のプロキシ・アドレスを変更できます。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のネーム・サービス・アクセプタを使用したプロキシへの接続に関する項を参照してください。

- プロキシ・アドレス・プロバイダのサポート—プロキシ・サービス、リモート・キャッシュおよびリモート起動定義では、キャッシュ構成ファイルで明示的にアドレスを定義するかわりに、運用構成オーバーライド・ファイルに定義されたTCPソケット・アドレスを参照できるようになりました。ソケット・アドレス定義を参照することで、キャッシュ構成ファイルを更新することなく、ネットワーク・アドレスを変更できます。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のTCPアドレスのアドレス・プロバイダ参照の使用に関する項を参照してください。

- プロキシ・サービスの機能向上—プロキシ・サービスは、デーモン(ワーカー)スレッドの動的なスレッド・プールを使用します。スレッド・プールは、クライアント・リクエストの数、リクエストのバックログの合計数およびアイドル・スレッドの合計数を基に自動的にスレッドの追加や削除を実行します。スレッド・プールは、Extendクライアントのリクエストを満たす十分なスレッドを確保し、リソースがアイドル・スレッドによって無駄に使用されないようにするために役立ちます。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のプロキシ・サービスのスレッド・プーリングの構成に関する項を参照してください。

- POF構成ファイル・ジェネレータ—POF構成ジェネレータ・コマンドライン・ツールは、@Portable注釈を含むクラスのユーザー・タイプ・エントリが格納されるPOF構成ファイルを自動的に作成します。このツールはPOF構成ファイルを手動で作成するかわりに使用でき、ビルド・プロセスの一部として実行できます。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のPOF構成ファイルの生成に関する項を参照してください。

- WebLogic ServerでのCoherenceアプリケーションのセキュリティ—Coherenceアプリケーションのセキュリティ機能には、クラスタ・メンバー間の認可、Oracle Coherenceのキャッシュとサービスへの認可、およびExtendクライアントの認証が含まれます。詳細は、『Oracle Fusion Middleware Oracle Coherenceの保護』のOracle WebLogic ServerでのOracle Coherenceの保護に関する項を参照してください。

- REST APIでの名前付き問合せのサポート—名前付き問合せは、coherence-rest-config.xmlファイル内のリソースに対して構成する問合せ式です。デフォルトで、問合せ式はCohQL式として指定する必要があります(CohQLの述語句)。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』の名前付き問合せの使用に関する項を参照してください。

- 複数のRESTアプリケーションの実行—キャッシュ構成ファイルに複数のコンテキスト・パスを構成することにより、アプリケーション・サーバーで複数のCoherence RESTアプリケーションを実行できます。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』の組込みHTTPサーバーを指定したデプロイに関する項を参照してください。

- Coherence RESTのセキュリティ—Oracle Coherence RESTのセキュリティでは、認証と認可の両方を使用してクラスタ・リソースへのアクセスを制限します。認証では、HTTP Basic、クライアント側のSSL証明書、およびHTTP Basicとクライアント側のSSL証明書の併用がサポートされています。認可は、Oracle Coherence*Extendスタイルの認可を使用して実装されます。詳細は、『Oracle Fusion Middleware Oracle Coherenceの保護』のOracle Coherence RESTの保護に関する項を参照してください。

- キャッシュ構成内のネームスペース・ハンドラ—ネームスペース・ハンドラを使用して、特定のXMLネームスペースに属するXML要素および属性を処理します。通常、ネームスペース・ハンドラは、複雑なネームスペースの処理を簡略化できる便利なメソッドを提供する基本のAbstractNamespaceHandler実装クラスを拡張します。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のキャッシュ構成ファイルの拡張に関する項を参照してください。

- クラスタ・サービスのスレッド優先度—クラスタ・サービスではスレッド優先度がサポートされています。この優先度は、Javaスレッドの実行の重要度を判断するための基礎として使用し、サービスのどのスレッドが重要とみなされているのかを示します。優先度を設定できるスレッドのタイプは、サービス・スレッド、イベント・ディスパッチャ・スレッドおよびワーカー・スレッドの3つです。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のサービスのスレッド優先度の指定に関する項を参照してください。

- カスタム・フェイルオーバー・アクセス・ポリシー—Coherenceには、フェイルオーバー・イベント中にクライアント・リクエストの負荷を軽減する事前定義済カスタム・アクション・ポリシーが用意されています。これにより、キャッシュ・サーバーはパーティション・バックアップを適切に再確立できます。このポリシーは、長待機時間のリクエストによる高い負荷によって、キャッシュ・サーバーが、転送またはバックアップする必要があるパーティションへの排他アクセスを妨げたり、大幅に遅延させる可能性がある場合に使用します。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のカスタム・フェイルオーバー・アクセス・ポリシーの有効化に関する項を参照してください。

- Oracle ExalogicおよびOracle Exalogic Elastic Cloud (OEEC)でのOracle Coherence—OEECソフトウェアは、最大限のパフォーマンス、信頼性およびスケーラビリティの基礎となっています。Coherenceは、特にOracle Exabusテクノロジを使用する際にこの基礎を利用するように最適化されています。詳細は、『Oracle Fusion Middleware Oracle Coherenceの管理』のOracle Exalogic Elastic Cloudの推奨事項に関する項を参照してください。

- Oracle Universal Installer (OUI)インストール—OUIを使用してOracle Coherence for Javaをインストールする機能が追加されました。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のOracle Coherence for Javaのインストールに関する項を参照してください。

- NamedSerializerサポートの拡張—NamedSerializer APIのサポートが.NETおよびC++に追加されました。

- Simple Logging Facade for Java (SLF4J)—SLF4Jロギングを使用するアプリケーションでは、CoherenceもSLF4Jロギングを使用するように構成できるようになりました。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のCoherenceログに対するSLF4Jの使用に関する項を参照してください。

- Mavenとの統合—Mavenは、プロジェクトの依存関係、サード・パーティの依存関係、およびビルド・ライフサイクルの定義を構成できる、ビルドと依存関係のシステムです。ソフトウェア・プロジェクトでは、ビルド・プロセスを簡略化および標準化するためにMavenをよく使用します。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のMavenとの統合に関する項を参照してください。Mavenの詳細は、http://maven.apache.org/を参照してください。

- ECIDのサポート—実行コンテキストID (ECID)を使用して、サーバー・インスタンスおよびFusion Middlewareコンポーネント全体のログ・エントリを相互に関連付けることができます。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のログ・メッセージ形式の変更に関する項、および『Oracle Fusion Middleware Oracle Coherenceの統合』のCoherenceログでのECIDの有効化に関する項を参照してください。

- Java SEバージョン7のサポート—Oracle Coherence 12c (12.1.2)は、Java SE Development Kit (JDK) 7でサポートおよび動作保証されています。

- Berkeley DBバージョン5のサポート—Oracle Coherenceは、組込みバージョンのBerkeley DB 5.0を使用して更新されます。

- Hibernateリリース3.3.以降の統合サポート—Oracle Coherence 12c (12.1.2)では、Hibernateリリース3.3以降との統合をサポートします。詳細は、次のURLでCoherenceコミュニティのページを参照してください。https://java.net/projects/cohhib

1.3 Oracle Coherence—すべてのプラットフォーム

すべてのプラットフォーム(Java、.NETおよびC++)で、Oracle Coherenceに対して次の修正と機能強化が加えられました。

- Oracle Coherence 12c (12.1.2) RESTfulインタフェースは、Jackson 1.9.2およびJersey 1.17.1のライブラリに依存するようになりました。

- キーおよびフィルタ・リスナーで受信するイベントの数の問題が解決されました。

- Extendクライアントが1つのイベントの複数コピーを受け取る問題を修正しました。

- Coherenceに、クイック・インストールを使用して作成されたOracleインストール・ホーム用の追加インストーラが付属するようになりました。これにより、Javadocおよびサンプルがインストール・ホームに追加でインストールされます。

- ペイロードに循環参照が含まれている場合に、POF/Extendを使用してNamedCache.invokeを呼び出すとjava.lang.StackOverflowErrorが発生する問題を修正しました。

- カスタムのComparatorでLimitFilterを使用する際にClassCastExceptionがスローされることがある問題を修正しました。

- Coherence Javadocは、1つのJARファイルとして付属するようになりました(COHERENCE_HOME:/coherence/doc/apiフォルダ内)。Javaの場合、coherence-api.htmは削除されました。

- 標準外のタイムゾーンに対してjava.lang.IllegalStateException: invalid minute offsetエラーがスローされる問題を修正しました。

- 選択した場合、Coherenceのサンプルは、Coherenceホームのexamplesディレクトリ直下にインストールされるようになりました。

- 空のフィルタ配列での初期化時にAllFIlterでArrayIndexOutOfBoundsExceptionがスローされていた問題を修正しました。

- ユーザー・オブジェクトの最初のプロパティが読み取られない場合、オブジェクトの後続の読取りでは、実際のプロパティ値ではなくタイプとバージョンを返すことができます。

- Coherenceには、クラスパスoracle_common/modulesからJacksonおよびJerseyが含まれるようになりました。

- 索引値がコレクションか配列である場合に、entrySet()メソッドが正常よりも小さな結果を返すという問題を修正しました。

- 通常または分割ISessionModelからセッション属性に同時アクセスする際に発生する、潜在的なNullReferenceExceptionを修正しました。

- Coherenceクラスタに複数の記憶域ノードが存在する場合、LimitFilterを使用するExtendクライアントに不適切な結果が返されることがあるという問題を修正しました。

- TCPAcceptor要素およびTCPInitiator要素はcache-config.xml構成ファイルから削除されました。

- <connect-timeout>構成要素を、<tcp-initiator>直下から<initiator-config>直下へ移動しました。

- session-cache-config.xmlをcoherence-web.jarに移動しました。このファイルは、coherence-web-spi.warおよびwebInstaller.jar内にはありません。

- TcpInitiator.openConnection()メソッドにおけるリモート・アドレスの冗長な再解決が削除されました。

- Coherence*ExtendクライアントからLimitFiltersを使用する際の問題を修正しました。

1.4 Oracle Coherence for Java 12c (12.1.2)

Oracle Coherence for Javaコンポーネントに新機能、機能向上およびbug修正が追加されました。

- 管理およびモニタリングの機能強化と修正

- パーティション・キャッシュの機能強化と修正

- TCMPの機能強化と修正

- Coherence*Extendフレームワークの機能強化と修正

- Coherence*Webの機能強化と修正

- Exabusフレームワークの機能強化と修正

- シリアライズ・フレームワークの機能強化と修正

- RESTフレームワークの機能強化と修正

- 構成の機能強化と修正

- Coherenceコンテナの機能強化と修正

- 他の機能強化と修正

1.4.1 管理およびモニタリングの機能強化と修正

- 一意のキャッシュ名とサービス名のコンポジット・キーが入力できるようにcache-size-reportが改善されました(以前はキャッシュ名のみがキーで使用されていました)。

- ServiceMBeanに、メンバーが特定のサービスに参加した時刻(クラスタ時刻)を示すプロパティJoinTimeが含まれるようになりました。

- グローバルMBeanオブジェクト名のメンバー名を反映するように、management-config構成要素のextended-mbean-nameを追加しました。

- COHQL select文の構文: bd_avg、bd_max、bd_min、bd_sumに、BigDecimalアグリゲータのサポートを追加しました。

- Coherenceコンソールは、正常に停止することによってIOExceptionを処理します。

- SimpleAssignmentStrategyに関連したモニタリング情報を提供する新しいSimpleStrategyMBeanを導入しました。

- SimpleStrategyMBeanへのパーティション損失通知を追加しました。

- Coherenceに実行コンテキストID (ECID)ロギングが追加されました。Coherence操作の呼出し時に、クライアント・アプリケーションにアクティブなDMS実行コンテキストが存在する場合、Coherenceをクライアント側で実行する際に作成されるすべてのログ・メッセージにECID(実行コンテキストID)が含められます。また、Coherenceが他のノードでクライアント・リクエストを実行するときにスローするリモート例外はクライアント側に戻され、そのクライアント側のCoherenceによってログに記録されます。その際に、そのリクエストのECIDも記録されます。リモート例外は、クライアントに対して再度スローされます。サーバー側のロギングでは、ログ・メッセージにECIDは含められません。

- ニア・キャッシュの再登録の問題を修正しました。

- 各呼出しで、MBeanHelper.getServerFinder()メソッドが不必要に新しいMBeanServerFinderインスタンスを作成するという問題を修正しました。

- logClusterState操作を、cluster MBeanに追加しました。この操作では、クラスタ内のすべてのノードの状態を同時にログに記録できます。その際には、完全なスレッド・ダンプと未処理のポーリングも取得されます。

- 各種のクラスタ・メンバー・サブセットに同時スレッド・ダンプを生成するMBean操作を追加しました。

- JMXでread-write-backing-map-schemeキャッシュの適切なサイズがレポートされるように修正しました。

- QueryHelper.executeStatement(String)メソッドを使用してプログラムでCohQL文を起動する機能を追加しました。

- カスタムMBeanのドメイン名が無視されてCoherenceに変更される問題を修正しました。アプリケーションによって登録されるカスタムMBeansのJMXドメイン名が保持されるようになりました。詳細は、次のOracle Supportサイトから入手できるKnowledge Module Doc ID 1392954.1を参照してください。
https://support.oracle.com

- ClusterNodeMBeanに一意のクラスタ・メンバー識別子(UID)を追加しました。

- MXBeanのサポートを追加しました。

1.4.2 パーティション・キャッシュの機能強化と修正

- サービスの開始後にClassLoaderをサービスに設定すると、サービスのシリアライザが一時的にnullに設定される競合状態を修正しました。ClassLoaderはサービスの開始前にのみ設定することをお薦めします。

- LimitFilterの使用時に発生していたjava.lang.ArrayIndexOutOfBoundsExceptionを修正しました。

- 一定の種類の失効または削除の変更のためにMapListenerイベントが欠落することがある問題を修正しました。

- サービスMBean操作startの問題を修正しました。JMXを使用してサービスを開始できるようになりました。さらに、サービスが停止すると、サービスMBeanの属性はサービスの実際の状態を反映します(以前は初期化されないままでした)。

- プロキシを再起動する場合に、ExtendのContinuousQueryCacheでイベントの受信が停止されることがある問題を修正しました。

- getAll、putAllおよびremoveAll処理の間にリソースのロックがタイムアウトになるとサービス障害になることがある問題を修正しました。

- CacheMap.EXPIRY_NEVERが正常に動作しなかった問題を修正しました。

- 読取り操作と自動コミットが有効な状態におけるトランザクション・キャッシュのメモリー・リークを修正しました。

- クラスタが明示的に停止されたとき、2つのメンバーが同じDefaultCacheServerプロセス内からクラスタに参加することがある問題を修正しました。

- PartitionedCache上でInvokeAll操作を実行するためのメモリーのオーバーヘッドをさらに減らしました。

- ヒープ外のバックアップに対してCoherenceサーバーのメモリー不足(OOM)エラーが生じることがある問題を修正しました。

- デーモンでThreadGroupsを内部使用することによって生じたメモリー・リークを修正しました。

- SimpleAssignmentStrategyは、大規模なクラスタの起動に自動的に適用されるようになりました。

- サーバー起動時の過剰なロギングの問題を修正しました。

- パーティション・サービスの非同期バックアップ・オプションを導入しました。これは明示的に有効化する必要があります。

- 過度の同時更新を実行すると、問合せの評価時に発生することのあったデッドロックを解消しました。

- 新しいサービス・メンバーが古いリース情報を保持してしまう可能性がある、ReplicatedCacheの問題を修正しました。

- クライアントが再分散待ちで停止してしまう問題を修正しました。

- 大規模なデータ・セットの集計で、データ間のパーティションが誤って無視される問題を修正しました。

- IllegalStateExceptionがremoveIndex操作時に発生する可能性がある問題を修正しました。

- 索引の更新時にキャッシュ・エントリで例外が発生する場合の索引のリジリエンスを改善しました。索引が削除されないようになり、索引に依存する問合せの効率的な実行が継続されます。壊れたエントリは問合せの結果から除外されます。

- フェイルオーバー時にEntryProcessorの負荷が高いと発生する、保留中の呼出し結果におけるメモリー・リークを解消しました。

- backup-count > 1の場合に起きる可能性がある所有権の競合の問題を修正しました。

- キャッシュにnull値が挿入される可能性がある、ReadWriteBackingMap.getAll()ロジックのリグレッションを修正しました。

- バックアップの転送中に単一鍵操作を実行するとアサーションがスローされる問題を修正しました。

- システム・プロパティtangosol.coherence.distributed.strictexpiryをtrueと指定しているときのエントリ失効時間を、パーティション転送またはフェイルオーバーにおいて保持しました。

- コレクションベースのエクストラクタに対して索引を使用する問合せで、不完全な結果が生じるというリグレッションを修正しました。

- マルチノードが失敗して、データ損失が発生する可能性のある問題を修正しました。

- RequestTimeoutExceptionが発生して異常終了した後に、サービスまたはクラスタが再起動できないことがある問題を修正しました。

- 記憶域の処理速度が遅いとputリクエストが削除操作によってブロックされる問題を修正しました。

- ConditionalIndexのPofExtractorとの使用に関連する問題を修正しました。

- 問合せの実行中に索引を作成するとキャッシュ・サービスが止まってしまうという問題を修正しました。

- ObservableHashMapをバッキング・マップとして使用すると、バッキング・マップの各イベントが不適切な順序で呼び出される問題を修正しました。

- EntryProcessorが例外をスローする結果、バックアップ・ノードがNullPointerExceptionをスローしてしまう問題を修正しました。

- Exabusを有効にすると、パーティション転送時にConcurrentModficiationExceptionがスローされる問題を修正しました。

- 記憶域無効なプロキシが異なるバックアップ数を持つクラスタに参加すると、Incompatible BinaryDelta implementationによりノードが停止する問題を修正しました。

- 索引付け問合せを実行するときにConcurrentModificationExceptionまたはNegativeArraySizeExceptionがスローされるという問題を修正しました。

- 索引なしのフィルタ処理された呼出しにおいて過度のロックが適用される問題を修正しました。

- 更新中のオブジェクトがロックされるときに発生するRefresh Aheadの問題を修正しました。

- リクエストSUIDの非単調登録の問題を修正しました。

- MessageBusでの実行時に適格なキャッシュ・リクエストをサービスの外部で処理して待機時間を短縮できるように、thread-count < 0を導入しました。

- キャッシュのputおよびremove操作時に、トリガーおよびライブ・イベント・インターセプタで新規エントリを登録できるようになりました。

- キャッシュ・エントリに対するライブ・イベントのイベントが誤った状態を示す問題を修正しました。

- 内部API load()およびloadAll()の戻り型が変更されました。

- エラー: RequestPolicyException ("The current quorum policy prevents PartitionSet{...} from being recovered"がスローされる問題を修正しました。

- backup-count-after-writebehindおよびPOFの使用時の問題を修正しました。

1.4.3 TCMPの機能強化と修正

- PacketPublisher自動スロットルの問題を修正しました。

- Coherenceでは、大規模なWKAクラスタにおけるメモリー消費を削減するために、PacketSpeakerを無効にできるようになりました。

- 各マシンで単一メンバーが送信pingを実行するように、IPMonitorトポロジを最適化しました。

- タイムアウトしたメンバーを取り除いて回復するためにかかる負荷を軽減しました。

- デフォルトのSSLコンテキストが非SSL構成でロードされる問題を解決しました。

- 次のように、サービスレベルで信頼できるトランスポートを選択するためのサポートを追加しました。

<distributed-scheme>
...
<reliable-transport>
datagram
</reliable-transport>
...
</distributed-scheme>

- サービス・スレッドおよびワーカー・スレッドの優先度を設定する機能を追加しました。

- この機能の導入に伴い、バッファ・プール設定をユーザーが指定できる機能を削除しました。つまり、message-poolおよびpacket-poolはXSDから削除されました。

- Exabusトランスポート属性をServiceMBeanに追加しました。

- ネットワークまたはプロセスの障害とは関係なく発生するMessageBus障害時に、Exabusアカウントで実行していると発生する部分的なネットワーク障害を解決しました。

- SSLハンドシェイクが一部のIBM JDKで完了しない問題を解決しました。

- PacketSpeakerを大幅に上回るPacketPublisherスレッドを回避するためにスロットリングを追加しました。

- この機能の導入に伴い、ユーザーがバッファ・プールの設定を指定する機能を削除しました。つまり、message-poolおよびpacket-poolはXSDから削除されました。これらの設定を使用しているお客様は少数です。

- スループットを向上させるために、MessageBusでの実行時にメッセージ・デシリアライズをIOスレッド・プールにオフロードするようになりました。

1.4.4 Coherence*Extendの機能強化と修正

- SystemPofContextクラス内の登録済クラスおよびシリアライザにアクセスするときに、mutexの不要なロックを削除することによってパフォーマンスを向上させました。

- カスタムExtractorEventTransformerクラスの使用時に欠落していたキャッシュ・イベント・コールバックを修正しました。

- TcpAcceptor.BufferPoolメッセージのログ・レベルがレベル9に引き上げられました。

- Jersey 1.17.1のライブラリを使用するようにCoherence REST APIをアップグレードしました。

- 文字列が空白("")である場合の、Javaと.NETにおけるPOFシリアライズの不整合を修正しました。

- 元の値エクストラクタと異なる新しい値エクストラクタを指定すると、サーバーがエクストラクタを無視するという、ExtractorEventTransformerシリアライズの問題を修正しました。

- 接続するホストとポートの情報を運用構成に追加するために、名前付きイニシエータを実装しました。

- リスニングするホストとポートの情報を運用構成に追加するために、名前付きアクセプタを実装しました。

- RESTクライアントとプロキシ間の通信をSSLを使用してセキュリティ保護する機能が追加されました。RESTクライアントは、HTTPのBasic認証、クライアント側の証明書およびその両方を使用して認証することもできます。さらに、Coherence*Extend Securityフレームワークが拡張され、RESTリクエストのファイングレイン認可もサポートされるようになりました。

- Coherence*Extendクライアントのタイムアウト時に発生する可能性のある、潜在的なデッドロックが削除されました。

- Extendクライアントの送信タイムアウトのサポートが追加されました。<initiator-config>の<request-timeout>値が、以前のようにレスポンスの受信時間を制限するだけでなく、リクエストの送信時間も制限するようになりました。

- 内部的なREST EntryProcessorsをPOFシリアライズ可能にして、RESTを使用したPOFクラスの公開をサポートするようにしました。

- Coherenceでは、認可されたホストにおける不正なホスト名が無視され、メッセージがログに記録されるようになりました。

- 欠落しているクラスをキャッシュすることによって、SafeConfigurablePofContextのパフォーマンスを向上させました。

- TcpAcceptorクラスでの無限ループの問題を修正しました。

- transformerをContinuousQueryCacheに追加しました。

1.4.5 Coherence*Webの機能強化と修正

- 計測対象のCoherence*Web WebアプリケーションでのHttpOnly Cookie属性のサポートを追加しました。

- WebSphere 8.5でCoherence*Web 12c (12.1.2)が動作保証されました。

- GlassFish SPIを使用するカスタム・セッション・キャッシュ構成ファイルの宣言を修正しました。

- Coherence*WebのExtendクライアントでTCMPサービスが起動するリグレッションを修正しました。

- GlassFish SPIでのセッション・アフィニティ・トークン構成を修正しました。

- 複数のセッション・リーパーによる同時無効化時にセッションの終了を試みる("attempt to exit session")IllegalStateExceptionを修正しました。

- Webアプリケーションに重複するHttpSessionListenerを追加しても、例外がスローされなくなりました。

- JVMシステム・プロパティcoherence.cache.configuration.pathを正当と認めるようにCoherence*Webを修正しました。

- coherence-session-weblogic-compatibility-modeシステム・プロパティのデフォルト値が正しくありませんでした。デフォルト値がtrueに変更されました。

- システム・プロパティを使用して構成すると、一部のCoherence*Web構成オプションが登録されないという問題を修正しました。

- Coherence Webの記憶域を制御するMbean属性を追加しました。

- ローカル・セッション属性を有効にすると、混合分散コントローラが自動的に構成されます。

- Coherence*Webで、停止証明書キャッシュを使用しなくなりました。

- 現在coherence-web.jarは、coherence/libディレクトリに配布されるようになっています。

- WebLogic Coherence*Web SPIに対してWebLogicHttpSessionManagerMBeanを追加しました。

- セッション・ロック・モードを構成するための、より簡単な方法を導入しました。

1.4.6 Exabusフレームワークの機能強化と修正

- exabus IOスレッド・プーリングを利用するように、リクエスト待機時間を最適化しました。

- 間違ったサービス・メンバーが停止されてしまう可能性がある、MessageBus停止検出の問題を解決しました。

- Exabus SocketBusにおけるファイル記述子のリークを解決しました。

- Exabus SocketBusで実行するサービスにおいてノードが停止してしまうというフロー制御の問題を解決しました。

- IllegalStateExceptionを引き起こす可能性がある、サービス停止時の競合状態を解決しました。

1.4.7 シリアライズ・フレームワークの機能強化と修正

- ConfigurablePofContextが完全に初期化される前に使用されることがある潜在的な競合状態を修正しました。

- キーによる抽出を、元のバイナリに対して実行する際に発生するPofExtractorの問題を修正しました。

- PofExtractorで、null値が許容されるようになりました。

- デシリアライズ時に、デフォルトのシリアライザが記憶域メンバーでEntryProcessorクラスを見つけられない場合にClassNotFoundExceptionを非表示にしないように、例外処理ロジックを修正しました

1.4.8 RESTフレームワークの機能強化と修正

- RESTのカスタム・アグリゲータおよびカスタム・プロセッサの登録を修正しました。

- Grizzly 2.2.1と連携するようにCoherence REST APIをアップグレードしました。

- Jackson 1.9.2のライブラリを使用するようにCoherence REST APIをアップグレードしました。

- Jersey 1.17.1のライブラリを使用するようにCoherence REST APIをアップグレードしました。

- 単一プロキシ内で複数のCoherence*Extend RESTアプリケーションを登録するためのサポートを追加しました。

- 単純な組込みHTTPサーバーでRESTリクエストを処理するためのサポートを追加しました。

- REST APIに、条件付きGETのサポートを追加しました。

- REST APIに、プラガブル問合せエンジンのサポートを追加しました。

- REST APIで名前付き問合せがサポートされるようになりました。

- REST APIに、キー・セット取得のサポートを追加しました。

- RESTアプリケーションの停止時にクラスタ・メンバーも自動的に停止するDefaultServletConextListenerを含めることで、Coherence RESTの機能を強化しました。

1.4.9 構成の機能強化と修正

- WKAホスト名を使用してクラスタが構成され、DNSが使用不可になると、ガーディアンによってクラスタ管理ノードが停止することがある問題を修正しました。

- CoherenceパーサーでBOM文字を含むUTF-8を処理できるようになりました。

- オプティミスティック・キャッシュ・スキームの使用時にプロキシ・サーバー/Extendクライアントで発生するClassCastExceptionの問題を修正しました。

- 読取り操作によるトランザクション・キャッシュに対して自動コミットが有効な場合に発生するメモリー・リークを修正しました。

- BOM文字を含むUTF-8を処理できるようにCoherenceパーサーを修正しました。

- TransactionalCacheがDefaultConfigurableCacheFactoryで失敗する問題を修正しました。

- 分散キャッシュのバッキング・マップにおけるデフォルトのユニット・カリキュレータがBINARYになりました(以前はFIXED)。

- 運用構成で、authorized-hostsのhost-address要素が無視されるという問題を修正しました。

- 12c (12.1.2)用にスキーマ・バージョンをアップグレードしました。

- DefaultConfigurableCacheFactory拡張のかわりにSpring Beanのネームスペース・ハンドラが提供されました。

- je.jar (Berkeley DB)をcoherence.jarマニフェスト・クラスパスから削除しました。

- システム・プロパティを使用してすべてのXML要素をオーバーライドできるように、XSDを修正しました。

- カスタムのサービス障害ポリシー構成が無視されるという問題を修正しました。

1.4.10 Coherenceコンテナの機能強化と修正

- Coherenceクラスタ構成なしでGARファイルがデプロイされるときに、警告が発せられます。

1.4.11 その他の機能強化と修正

- Javaセキュリティ・マネージャのセキュリティ・ポリシーに追加権限を追加しました。

- 以前のベータ・リリースでは、TopLinkコンポーネントに対してキー・ライブラリ・ファイルが適切にインストールされませんでした。

- invokeAll(colKeys, processor)メソッドを呼び出すと多くのアサーション失敗が生じるという問題を修正しました。

- ディスク領域不足を回避するために、FlashおよびRAMジャーナルに変更を加えました。

- hashCodeメソッドをPartitionSetインタフェースに実装しました。

- IPモニターによる停止マシン検出の精度が向上し、偽陽性の可能性が減りました。

- 変更内容がバックアップで更新されても、そのイベントがリスナーに送信される前は、プライマリが停止すると一部のイベントが失われてしまう可能性があります。

- ガーディアン・スレッドのログに、モニターと同期化の情報が含まれるようになりました。logStackTraces()のほかに、GuardSupportには、getThreadDump()およびgetDeadlocks()という2つの新しいメソッドがあります。

- 同一キーに対する負荷の高い同時アクセスにおける、PortalCacheProvider.get()メソッドの競合を削減しました。

- コレクションベースのエクストラクタに対して索引を使用する問合せで、不完全な結果が生じるというリグレッションを修正しました。

- 高速更新時に問合せを実行する際に、IllegalMonitorStateがスローされるという問題を修正しました。

- Coherenceに含まれる組込みバージョンのBerkeley DBを5.0に更新しました。

- MANIFEST.MFファイルの検出プロセスが向上しました。

- SLF4Jロギング・フレームワークのサポートを追加しました。

- Subjectコンテキスト(Subject.doAs)でサーバーを実行しても繰り返し認証を求められないように、セキュリティ・フレームワーク使用時の権限チェックを最適化しました。

- security.policyに、欠落していたセキュリティ権限を追加しました。

- プールから接続を取得する際に、トランザクション・タイムアウト値が必ずリセットされるように修正しました。これにより、トランザクションが予期せずにタイムアウトする事態を防げます。

- すべてのIPアドレスのリスニングに0.0.0.0 (IP_ANY)を使用できないという問題を修正しました。

- サービス停止時にNullPointerExceptionを引き起こす可能性のある競合状態を解決しました。

- coherence-rest.jarマニフェスト・ファイルに記述されている、正しくないJerseyライブラリ・バージョンを修正しました。

- サービス起動時に非常に長い通信遅延が生じるときに、アサーション・エラーを引き起こす可能性がある問題を修正しました。

- Coherenceがバージョン番号を取得する際に、マニフェスト・ファイルを読み取れないという問題を修正しました。

- EventDeathExceptionクラスをcom.tangosol.net.eventsパッケージに移動しました。

- ログ・キューのオーバーフローを回避するために構成済のロガーがバックログされる場合、System.errにロギングをリダイレクトします。

- 選択的な索引におけるメモリー消費のオーバーヘッドを削減しました。

1.5 Oracle Coherence for .NET 12c (12.1.2)

Oracle Coherence for .NETコンポーネントに新機能、機能向上およびbug修正が追加されました。

- パーティション・キャッシュの機能強化と修正

- Coherence*Extendフレームワークの機能強化と修正

- Coherence*Webの機能強化と修正

- 他の機能強化と修正

1.5.1 パーティション・キャッシュの機能強化と修正

- Request.RequestStatus.WaitForResponseによって、RequestTimeoutExceptionではなくArgumentOutOfRangeExceptionがスローされる問題を修正しました。

- 索引の更新時にキャッシュ・エントリで例外が発生する場合の索引のリジリエンスを改善しました。索引が削除されないようになり、索引に依存する問合せの効率的な実行が継続されます。壊れたエントリは問合せの結果から除外されます。

1.5.2 Coherence*Extendの機能強化と修正

- Coherence for .NETのExtend接続で、プロキシ・サーバー・ログ・メッセージおよび接続MBeanに正しいタイムスタンプが使用されるようになりました。

- .NET Framework 4.5のTimeZone.CurrentTimeZone.GetUtcOffset()のbugにより、PofStreamWriter.WriteLocalDateTime()が特定のDateTime値に対して正しくない値を書き込むことがあります。この問題を回避するために、Coherenceに回避策が実装されました。

- .NETディストリビューションからサンプルが削除されました。

- Coherence for .NETのデフォルトの<connect-timeout>値に関する問題を修正しました。

- WindowsFormsCacheListenerでイベントの処理がハングすることがある問題を修正しました。

- <references-enabled>がtrueに設定されているとき、ユーザー定義オブジェクトのデシリアライズ時にスローされていたNullReferenceExceptionを修正しました。

- 接続タイムアウトが.NETクライアントで実行されるようになりました。

- .NETでPOF注釈の自動索引付け機能を有効化する際の問題を解決しました。

- .NET Extendクライアントのnameサービスのサポートを追加しました。

- 元のまたは新しいValueExtractorがnullの場合、ExtractorEventTransformerメソッドがNullPointerExceptionsをスローするという.NETおよびC++の問題を修正しました。

- .NETのcoherence.xsdの<logging-config>に、欠落している<logger-name>を追加しました。

- 元の値エクストラクタと異なる新しい値エクストラクタを指定すると、サーバーがエクストラクタを無視するという、ExtractorEventTransformerシリアライズの問題を修正しました。

- 元のエクストラクタまたは新しいエクストラクタの値がnullの場合、ExtractorEventTransformer.EqualsがNullReferenceExceptionをスローするように修正しました。

- Coherence for .NETの静止モードでのインストール時に、Microsoft Help 2.x Runtimeがなくてもエラーが発生しなくなりました。

- キャッシュ・サイズが大きいと欠落してしまう、.NETのContinuousQueryCacheのエントリを修正しました。

- 接続するホストとポートの情報を運用構成に追加するために、名前付きイニシエータを実装しました。

- デフォルトの名前付きシリアライザのサポートを構成ファイルに追加しました。

- Coherence*Extendクライアントのタイムアウト時に発生する可能性のある、潜在的なデッドロックが削除されました。

- 欠落しているクラスをキャッシュすることによって、SafeConfigurablePofContextのパフォーマンスを向上させました。

- NamedSerializerサポートが、.NETおよびC++にも追加されました。

- transformerをContinuousQueryCacheに追加しました。

- ICacheEventTransformerおよびICacheTriggerを、Tangosol.UtilからTangosol.Net.Cacheに移動しました。

1.5.3 Coherence*Webの機能強化と修正

- クラスタの再起動後にIllegalThreadStateExceptionがスローされる、Asp.NET SessionCleanupListenerの問題を修正しました。

- ASP.NETセッション・プロバイダで使用されているキャッシュ名をcacheName属性で指定する機能を回復しました。

- Webセッション・モデルでセッション・データにアクセスする際に発生する、AttributeHolderのLockRecursionExceptionを修正しました。

- session-cache-config.xmlをcoherence-web.jarに移動しました。このファイルは、coherence-web-spi.warおよびwebInstaller.jar内にはありません。

1.5.4 その他の機能強化と修正

- Coherence .NETバージョン番号は、最大4桁(N.N.N.N)のみをサポートする.NETバージョン規則をサポートするように変更されました。この機能強化の詳細は、「Coherence .NETバージョン番号の変更」を参照してください。

- Coherence for .NETでは、Microsoft Visual Studio 2008以降を現在サポートしています。

- Coherence for C++および.NETディストリビューションにサンプル・アプリケーションが付属されなくなりました。

- .NETのDecimalのPOFシリアライズがさらにJavaの形式に準拠するようになりました。

- INamedCacheのDispose()が、キャッシュのRelease()を呼び出す際の実装方法をドキュメント化しました。

1.6 Oracle Coherence for C++ 12c (12.1.2)

Oracle Coherence for C++コンポーネントに新機能、機能向上およびbug修正が追加されました。

- パーティション・キャッシュの機能強化と変更

- Coherence*Extendフレームワークの機能強化と修正

- 他の機能強化と修正

1.6.1 パーティション・キャッシュの機能強化と変更

- 索引の更新時にキャッシュ・エントリで例外が発生する場合の索引のリジリエンスを改善しました。索引が削除されないようになり、索引に依存する問合せの効率的な実行が継続されます。壊れたエントリは問合せの結果から除外されます。

1.6.2 Coherence*Extendの機能強化と修正

- ネットワーク・アドレス・ルックアップ時にCoherence for C++が解放されたメモリーを読み取ることがある問題を修正しました。

- GCC 4.7を使用してアプリケーションをコンパイルできるように、Coherence for C++ヘッダー・ファイルを更新しました。

- アプリケーションのシャットダウン中に発生する可能性があるコア・ダンプを修正しました。

- STLportライブラリで使用するSolaris x86 32-bit用のCoherence for C++ディストリビューションを追加しました。

- 構成を使用してマップ・リスナーを追加するためのサポートを追加しました。

- C++ Extendクライアントのnameサービスのサポートを実装しました。

- C++の可変LimitFilter::m_vComparatorをより的確な方法で使用しました。

- 元のまたは新しいValueExtractorがnullの場合、ExtractorEventTransformerメソッドがNullPointerExceptionsをスローするという.NETおよびC++の問題を修正しました。

- デフォルトの名前付きシリアライザのサポートを構成ファイルに追加しました。

- POF注釈付きクラスの登録時にクラッシュが発生する可能性がある問題を修正しました。

- C++ Coherence*Extendクライアントのpingリクエストの問題を修正しました。

- プロキシ・サービスで閉じた接続をCoherence*Extend for C++クライアントで検出しないことがある問題を修正しました。

- NearCacheおよびLocalCacheクラスのヘッダー・ファイルを含めるように、Coherence for C++ディストリビューションを更新しました。

- 初期化時に、C++クラスおよび割当てHeapAnalyzersがクラッシュする可能性がある問題を修正しました。

- COH_REGISTER_EXECUTABLE_CLASSマクロの構文エラーを修正しました。

- 接続するホストとポートの情報を運用構成に追加するために、名前付きイニシエータを実装しました。

- ライブラリ・ロード・フェーズより後にC++ COH_STATIC_INITメソッドが呼び出されるように変更して、WindowsのDllMain依存性の問題を回避しました。

- NamedSerializerサポートが.NETおよびC++にも追加されました。

- transformerをContinuousQueryCacheに追加しました。

1.6.3 その他の機能強化と修正

- Coherence for C++および.NETディストリビューションにサンプル・アプリケーションが付属されなくなりました。

1.7 Coherence 12c (12.1.2.0.1)の新機能、機能強化および修正

次の変更および拡張機能は、12c (12.1.2.0.1)リリース用に作成されています。

- Coherence 12c (12.1.2.0.1)の新機能

- Oracle Coherenceの変更および機能強化—すべてのプラットフォーム12c (12.1.2.0.1)

- Oracle Coherence for Java 12c (12.1.2.0.1)の変更および機能強化

- Oracle Coherence for .NET 12c (12.1.2.0.1)の変更および機能強化

- Oracle Coherence for C++ 12c (12.1.2.0.1)の変更および機能強化

1.7.1 Coherence 12c (12.1.2.0.1)の新機能

次の新機能が、Oracle Coherenceの12.1.2.0.1パッチ・リリースに追加されました。

- Apache Tomcatアプリケーション・サーバー・バージョン7.xのサポートをCoherence*Webに追加—Apache Tomcatアプリケーション・サーバーのバージョン7.xのサポートが追加されました。詳細は、『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』のサポートされるWebコンテナに関する項を参照してください。

- HotCacheでのPOFシリアライズ—HotCacheでPOFシリアライズを使用できますが、POF構成ファイルを更新してTopLink Gridフレームワーク・クラスが登録できるようにする必要があります。詳細は、『Oracle Fusion Middleware Oracle Coherenceの統合』のHotCacheでのPortable Object Formatの使用に関する項を参照してください。

- TopLink Gridアプリケーション用のラッパー・クラス—新しいコンテキスト・プロパティにより、Coherenceキャッシュ挿入を行うTopLink Gridアプリケーション用のラッパー・クラスを生成できます。詳細は、『Oracle Fusion Middleware Oracle Coherenceの統合』のTopLink Gridアプリケーション用ラッパー・クラスの有効化に関する項を参照してください。

- RAMおよびフラッシュ・ジャーナルの有効期限およびエビクション・ポリシー—有効期限およびエビクション・ポリシーにより、格納するエントリ数を制限し、ジャーナルがフルになったときに自動でエントリを削除できます。エントリのサイジングとエビクション・ポリシーの両方のカスタマイズが可能です。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のジャーナルの失効およびエビクションの使用に関する項を参照してください。

- ConnectionManagerMBean MBean用の新しい属性—新しい属性、UnauthorizedConnectionAttemptは、許可されていないホストから行われた接続の試行数を示します。詳細は、『Oracle Fusion Middleware Oracle Coherenceのマネージメント』のConnectionManagerMBeanに関する項を参照してください。

- Coherence*Webにおける同一セッション・インスタンスへの同時アクセス—新しいコンテキスト・パラメータにより、キャッシュ・デリゲータを使用して、セッション・インスタンスの格納および取得のために分散キャッシュを使用しようとする前にローカル・キャッシュが使用されるように設定できます。この機能は、PeopleSoftを使用する際に有効化する必要があります。詳細は、『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』の同一のセッション・インスタンスへの同時アクセスに関する項を参照してください。

- Spring統合のドキュメントは、『Oracle Fusion Middleware Oracle Coherenceの統合』からCoherenceコミュニティのページに移動しました。SpringとCoherenceの統合の詳細は、次のURLを参照してください。https://java.net/projects/cohspr/

1.7.2 Oracle Coherenceの変更および機能強化—すべてのプラットフォーム12c (12.1.2.0.1)

- プロキシ・サーバーからの例外の原因を返すようにConnectionExceptionを改善しました。

- キャッシュの非アクティブ化コールの処理を強化しました。

- POFシリアライザが整数値-31を適切に読み取れない問題を修正しました。

- InFilterシリアライズの問題を修正しました。

- これ以降、新しいクライアントが古いサーバーに接続できるようCoherence*Extendを改善しました。

- 変換済MapEventsの重複配信を引き起こしていた問題を修正しました。

- リクエストされたプロパティ索引がすでに使用されている場合のPOF注釈ログ・メッセージを改善しました。

1.7.3 Oracle Coherence for Java 12の変更および機能強化c (12.1.2.0.1)

- ランダムに切り捨てられる、それ以外の場合は有効なパケットに対してPacketRecieverを強化しました。

- カスタムMBean登録によってMBean名が一意であると想定される問題を修正しました。

- documentation.htmファイルにおけるOTN CoherenceドキュメントへのURLリダイレクトを更新しました。

- POF Configuration Generator on Windowsで、アプリケーション・ディスクリプタに無効な参照が生成される問題を修正しました。

- NULLグループ・アドレスが原因でDefaultClusterDependencies.makeClusterName()がNPEをスローする問題を修正しました。

- ローカルで保存したセッション属性が誤ってクリーン・アップされる問題を修正しました。

- Coherence*Extend経由で接続を試みた許可されていないホストのトラッキングを追加してD6メッセージのロギングを含めるとともに、ConnectionManagerMBeanにおける新規のJMX属性UnauthorizedConnectionAttemptsに試行数の記録を追加しました。

- <listener>要素を使用してリモート・クライアントにMapTriggerListeners定義する機能を追加しました。

- Elastic Dataにおいて破棄後にジャーナルからデータが削除されない問題を修正しました。

- Solarisで実行中にpof-config-gen.shがエラーをスローする問題を修正しました。

- 非同期SSL実装において、SSL通信が有効化された場合にハングのリクエストが引き起こされる場合がある問題を修正しました。

- セッション無効化が異なるノードから開始された場合に、ローカル属性がクリーン・アップされるようSession Reaperを修正しました。

- サブポート値を表示するようProxy HostIP MBean属性を強化しました。

- 孤立したパーティションをリストアする際に、Guardianタイムアウトが引き起こされる可能性がある問題を修正しました。

- プロキシ・サービス・スレッド・プールのデフォルトの<thread-count-max>値を、CPUコアの数の(8倍から) 4倍に削減しました。

- Elastic Dataにおいて、ネイティブでサポートされているエビクションおよび失効を構成できない問題を修正しました。

- アプリケーションのアンデプロイ中にCoherence*WebでAssertionExceptionが引き起こされる可能性を修正しました。

- 異種トランスポートを持つクラスタでNullPointerExceptionが引き起こされる可能性がある問題を修正しました。

- 保護されているスレッドのタイムアウトと保護ざれなくなったスレットの間の潜在的な競合状態を修正しました。

- クラスタ全体でJMXが無効化されている孤立したパーティションでイベントが生成された場合に、NullPointerExceptionが引き起こされる問題を修正しました。

- 分散キャッシュへセッションをフラッシュするとともにセッションのローカル・インスタンスを保持する新規のセッション構成をCoherence*Webに追加しました。詳細は、『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』の同一のセッション・インスタンスへの同時アクセスに関する項を参照してください。

- 3番目のComparatorを無視しないよう、ChainedComparatorの3つのパラメータ・コンストラクタを更新しました。

- プロキシ・サービスのロード・バランシングでのカスタムのComparatorの問題を修正しました。

- CoherenceコンソールでGARのリソースが使用可能になる問題を修正しました。

- NamedCacheイテレータがStandard editionクラスタからExtendクライアントに重複する結果を返す問題を修正しました。

- クラスタ全体でJMXが無効化されている孤立したパーティションでイベントが生成された場合に、NullPointerExceptionが引き起こされる問題を修正しました。

- 宛先ロガーの範囲内にないログ・メッセージが.エンキューされる問題を修正しました。

- 通知されたポートおよび優先ポートの両方に送信されるよう、DiagnosticPacketsの送信を改善しました。

- Elastic Dataにおいて、keySetメソッドを直接的または間接的にコールする操作中に、無効なバイナリ例外がレポートされる問題を修正しました。

- サービスの終了を回避するためにNPEおよびUOEを防ぐことによって、キャッシュの誤った構成の処理を強化しました。

- シリアライズ不可能な実装を許可するよう、javax.transaction.xa.Xidのトランザクション・キャッシュ処理を強化しました。

- 少なくとも1つのホスト名が指定されているWKAを含むクラスタを起動した場合の、互換性のないWKAアドレスに関する不正確な警告を削除しました。

- 実行中のクラスタがない場合にロガー・スレッドを停止するよう、CacheFactory.shutdown()を修正しました。

- DefaultCacheServer.start()の後でDefaultCacheServer.shutdown()がコールされる場合のNullPointerExceptionを修正しました。

- キャッシュ構成で構成されたユニット・カリキュレータを適用するよう、ReadWriteBackingMapを修正しました。

- DCCF.applyScopeToServiceNameメソッド名をgetScopedServiceNameに変更しました。

- cache-nameの一部として '$'文字を禁止するようにトランザクション・キャッシュを修正しました。

- tmb、sdmbまたはimbトランスポートを負荷の高い環境で使用する場合に、パーティション転送をスタックさせる可能性のある競合状態を修正しました。

- スキーム定義cache-configのないトランザクション・キャッシュを作成する場合に、エラーがスローされない問題を修正しました。

- 不必要なJMX統計が原因で大きなメモリー・オーバーヘッドを生成するFilter実行の問題を修正しました。

- すべてのノードで実行されるようNameServiceを強化しました。

- 特定のロード・シナリオにおいて、動的プロキシ・サービス・スレッド・プール・サイズが過度に増加する問題を修正しました。

- Coherence*Web for Tomcat 7.xアプリケーション・サーバーのサポートを追加しました。

- 指定された引数を検証するDefaultCacheServerの問題を修正しました。

- 0パーティションの損失に対してパーティション損失通知が発行される問題を修正して、この通知が発行されないようにしました。

- MANIFESTファイルの欠落をより許容するようDefaultCacheServerの問題を修正しました。

- GARファイルのサーバー・コマンドが以前に発行されている場合に、GARのキャッシュ構成が使用されるようにコンソールの問題を修正しました。

- 計測対象のCoherence*Web WebアプリケーションでのHttpOnly Cookie属性のサポートを追加しました。 Coherence*Web

- ArrayListから導出されたユーザー・タイプに対し正しいタイプIDを返すようにPofHelper.getPofTypeId()メソッドを修正しました。

- キャッシュの確認または破棄(あるいはその両方)を行う場合に、カスタムのプロキシがコールされていない問題を解決しました。

1.7.4Oracle Coherence for .NET 12の変更および機能強化c (12.1.2.0.1)

- .NET 4.5 frameworkにおけるSynchronizedDictionaryの問題を修正しました。

- POFシリアライザがタイプ-29を適切に読み取れない問題を修正しました。

- SSL対応のCoherence*Extend接続用のSSLクライアント証明書選択を改善しました。

- .NET Framework 2.0における.NETインストーラの前提条件に対するCoherenceを削除しました。

- Coherence for .NET and C++にReducerAggregatorを追加し、ReducerAggregatorがこれらの言語で起動できるようにしました。

- gzip圧縮フィルタのようなネットワーク・フィルタを使用するための正しいXML構成要素を検索するように、Coherence for .NETライブラリを修正しました。

- ArrayListから導出されたユーザー・タイプに対し正しいタイプIDを返すようにPofHelper.getPofTypeId()メソッドを修正しました。

1.7.5Oracle Coherence for C++ 12の変更および機能強化c (12.1.2.0.1)

- <class-factory-name>要素でクラス・ファクトリを定義するためのサポートを追加しました。

- 3つ以上の要素をサポートできるようにLiteSetを修正しました。

- <init-params>要素でクラス初期化パラメータを定義するためのサポートを追加しました。

- String::substringが、サブストリング検索を未完了のまま終了する問題をい修正しました。

- マップ・サイズが1の場合に正しく初期化するようadapter_map/boxing_mapイテレータを修正しました。

- Coherence for .NET and C++にReducerAggregatorを追加し、ReducerAggregatorがこれらの言語で起動できるようにしました。

1.8 既知の問題とその回避策

この項では、リリース時に判明している問題について説明します。

- WebLogic Serverのドメイン・サイズ制限

- GARファイルのデプロイメントで必要なマニフェスト・ファイル

- CacheFactoryコンソールからのGARファイルのデプロイ

- LinuxでのJVMのクラッシュ

- オフセット・エラーによるJVMのクラッシュ

- Coherenceキャッシュのオーバーライドが機能しない

- キャッシュ・サイズ・レポートの問題

1.8.1 WebLogic Serverのドメイン・サイズ制限

比較的大規模なクラスタとともに管理対象Coherenceサーバーを使用している場合は、管理サーバーのメモリー消費の問題が発生することがあります。この問題および可能な回避策の詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverリリース・ノート リリース12c (12.1.2)』の管理サーバーのメモリー消費およびJMX通知に関する項を参照してください。

1.8.2 GARファイルのデプロイメントで必要なマニフェスト・ファイル

DefaultCacheServerクラスを使用してグリッド・アーカイブ(GAR)をデプロイするとき、アーカイブにマニフェスト・ファイルが含まれていない場合はデプロイメントが失敗します。Javaのjarコマンドを使用してアーカイブを作成し、MANIFEST.mfファイルがMETA-INFディレクトリに含まれていることを確認してください。

1.8.3 CacheFactoryコンソールからのGARファイルのデプロイ

CacheFactoryコンソールからserverコマンドを使用してGARをデプロイするとき、アーカイブ内のキャッシュ構成ファイルは、coherence.jarライブラリに含まれるデフォルトのキャッシュ構成ファイルのオーバーライドに失敗します。この問題を回避するには、コンソールを起動し、coherence.jarファイルより前のクラスパスにすべての構成ファイルが配置されていることを確認してください。GARファイルを使用して起動されたキャッシュ・サーバーに接続している場合は、CacheFactoryクライアント上のキャッシュ構成ファイルで、キャッシュ・サーバー上のGARファイルで使用するのと同じスコープ名を定義する必要があり、定義しない場合、クライアントは定義済キャッシュを使用できません。

1.8.4 LinuxでのJVMのクラッシュ

LinuxでJDK 1.7を実行している場合、JVMがSIGSEGV at ParMarkBitMap::verify_clear()エラーでクラッシュする可能性があります。JDK 1.7では、デフォルトで「大きなページ」のサポートが有効化されています。この問題を回避するには、-XX:-UseLargePages Javaコマンドライン・オプションを使用して、大きなページのサポートを無効にしてください。この問題については、Bug JDK-8007074がファイリングされています。

大きなページのサイズの構成の詳細は、『Oracle Fusion Middleware Oracle Coherenceの管理』の大きなページ構成の調整に関する項を参照してください。

1.8.5 オフセット・エラーによるJVMのクラッシュ

実行時のコンパイル中に、JVMがクラッシュしてguarantee(this->is8bit(imm8)) failed: Short forward jump exceeds 8-bit @ offsetエラーが報告されます。この問題を回避するには、Javaコマンドライン・オプション-XX:CompileCommand=exclude,fully-qualified-method-nameを使用して、クラッシュで示されたメソッドのコンパイルを無効にしてください。この問題については、Bug JDK-8010437がファイリングされています。

1.8.6 Coherenceキャッシュのオーバーライドが機能しない

この問題は、WebLogic ServerでCoherenceキャッシュのオーバーライド機能を使用している場合に発生する可能性があります。WebLogic Server構成ウィザード(config.sh)を使用してドメインを作成し、WebLogic Coherenceクラスタ拡張テンプレートが指定されている場合は、Coherenceクラスタが定義されます。Coherenceクラスタは、管理対象サーバー、または構成ウィザードで作成されたWebLogic Serverクラスタに関連付けられます。管理対象サーバーまたはWebLogic Serverクラスタが作成されていない場合、Coherenceクラスタは管理サーバーに関連付けられます。Coherenceクラスタとサーバー間のこの関連付けはWebLogic Server構成ツールを使用して完全には定義されないため、Coherenceキャッシュ構成オーバーライド・ファイルはCoherenceクラスタによって検出されません。

次の解決策を使用します。

1. 構成ウィザードを使用して作成したドメインを起動し、WebLogic Server管理コンソールを使用して接続します。

2. 管理コンソールの左ペインで、「環境」を展開して「Coherenceクラスタ」を選択します。

3. Coherenceクラスタを選択します。Coherenceクラスタの設定ページが表示されます。

4. 「メンバー」タブを選択すると、Coherenceクラスタのすべてのメンバーが表示されます。

5. Coherenceクラスタのメンバーであるサーバーおよびクラスタの選択を解除し、「保存」をクリックします。

6. Coherenceクラスタの目的のメンバーであるサーバーおよびクラスタを再度選択し、「保存」をクリックします。

これにより、Coherenceクラスタと目的のサーバーの間の関連付けが完全に実行されるため、指定のCoherenceクラスタのキャッシュ構成オーバーライド・ファイルが検出されて使用されます。

詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverクラスタの管理』のキャッシュ構成ファイルのオーバーライドに関する項を参照してください。

1.8.7 キャッシュ・サイズ・レポートの問題

複数のサービスに同じキャッシュが存在すると、キャッシュ・サイズのレポートでエントリが欠落します。

この問題を回避するには、group-byタグをtrueに設定して、キャッシュ・サイズ・レポートにサービス列が含まれるようにカスタマイズします。キャッシュ・サイズ・レポートの詳細は、『Oracle Fusion Middleware Oracle Coherenceのマネージメント』のキャッシュ・サイズ・レポートの理解に関する項を参照してください。

1.9 SpringサポートのCoherenceコミュニティ・プロジェクトへの移動

Springサポートは、Coherence 12c (12.1.2)リリースからCoherenceコミュニティ・プロジェクトに移動しました。Coherenceコミュニティ・プロジェクトには、Oracle Coherenceに基づいて一般的に使用される設計パターンの実装例が用意されています。次のURLを参照してください。

https://java.net/projects/cohspr/

1.10 非推奨となった機能

Coherence 12c (12.1.2)リリースでは、次の機能が非推奨または削除になりました。

- ActiveCache

- LHストア・マネージャ

- NamedCache lock API

- DefaultConfigurableCacheFactoryクラス

- XmlConfigurableインタフェース

1.10.1 ActiveCache

デプロイされたアプリケーションでCoherenceデータ・キャッシュを簡単に使用し、セッション管理のためにCoherence*Webをシームレスに統合するためのWebLogic Serverの機能の集合であるActiveCacheは、管理対象Coherenceサーバーに置き換えられました。ActiveCacheは、以前のバージョンのWebLogic Server上で実行されるように開発されたアプリケーションでは引き続き使用できます。

1.10.2 LHストア・マネージャ

Coherence 12c (12.1.2)リリース以降、LHストア・マネージャは非推奨です。Berkeley DBの同様の機能を使用してください。詳細は、「非推奨のLHファイル・マネージャの代替」を参照してください。

1.10.3 NamedCache lock API

NamedCache lock APIは非推奨です。入力プロセッサAPI (JavaおよびC++用のEntryProcessor、および.NET用のIEntryProcessor)で提供されるロック・サポートをかわりに使用してください。詳細は、「非推奨のNamedCache Lock APIの代替」を参照してください。

1.10.4 DefaultConfigurableCacheFactoryクラス

com.tangosol.net.DefaultConfigurableCacheFactoryクラスは非推奨になりました。これは、拡張したり特定の実装セマンティクスに依存するアプリケーション用に後方互換性を維持する目的でのみ、Coherenceディストリビューションに引き続き含まれています。

開発者は、ExtensibleConfigurableCacheFactoryクラスで使用される拡張メカニズムを使用するように、このクラスに依存する実装をリファクタすることをお薦めします。今後、このクラスの開発や拡張は行われません。

開発者は、DefaultConfigurableCacheFactoryインスタンスを直接インスタンス化するのではなく、CacheFactory.getCacheFactoryBuilder().getConfigurableCacheFactory()メソッドを使用してConfigurableCacheFactoryインスタンスを取得することをお薦めします。

1.10.5 XmlConfigurableインタフェース

Coherence 12c (12.1.2)リリースでは、com.tangosol.run.xml.XmlConfigurableインタフェースは非推奨になりました。インジェクションのサポートにより、このインタフェースは不要になります。実装を初期化する別の方法については、「非推奨のXmlConfigurableインタフェースの代替」を参照してください。

次のリストでは、com.tangosol.run.xml.XmlConfigurableインタフェースが非推奨になるために影響を受けるインタフェース、クラスおよびメソッドについて説明します。

非推奨になるインタフェース

インジェクションのサポートにより、このインタフェースは不要になります。

- com.tangosol.run.xml.XmlConfigurable

非推奨になるインタフェース上のメソッド

インジェクションのサポートにより、このメソッドは不要になります。

- com.tangosol.util.Controllable.configure(XmlElement xml)

非推奨になるクラス

これらのクラスは、ParameterizedBuilder実装に置き換えられます。

- com.tangosol.io.ConfigurableSerializerFactory

- com.tangosol.net.ConfigurableAddressProviderFactory

影響を受けるインタフェース

これらのインタフェースのすべての実装は、インジェクションを使用して構成されます。

- com.tangosol.net.BackingMapManagerContext

- com.tangosol.net.CacheService

- com.tangosol.net.Cluster

- com.tangosol.net.InvocationService

- com.tangosol.net.NameService

- com.tangosol.net.PartitionedService

- com.tangosol.net.ProxyService

- com.tangosol.net.Service

- com.tangosol.util.Service

影響を受けるクラス

これらのクラスは、インジェクションを使用して構成されます。

- com.tangosol.coherence.reporter.ColumnView

- com.tangosol.coherence.reporter.ReporterColumnView

- com.tangosol.coherence.rest.config.RestConfig

- com.tangosol.coherence.servlet.AbstractHttpSessionCollection

- com.tangosol.coherence.servlet.CoherenceHttpSessionCollection

- com.tangosol.coherence.servlet.SplitHttpSessionCollection

- com.tangosol.coherence.transaction.internal.ClusterWrapper

- com.tangosol.coherence.transaction.internal.ServiceWrapper

- com.tangosol.coherence.weblogic.PortalCacheProvider

- com.tangosol.io.bdb.BerkeleyDBBinaryStoreManager

- com.tangosol.io.pof.ConfigurablePofContext

- com.tangosol.net.ConfigurableAddressProvider

- com.tangosol.net.SocketOptions

- weblogic.servlet.internal.session.WebLogicSPIHttpSessionIdGenerator

影響を受けるパッケージ

すべてのクラスは、インジェクションを使用して構成されます。

- com.tangosol.coherence.reporter.locator

影響を受けるクラス

これらのクラスはすでに非推奨であるため、変更は必要ありません。

- com.tangosol.net.CompressionFilter(すでに非推奨)

- com.tangosol.net.DefaultConfigurableCacheFactory(すでに非推奨)

- com.tangosol.net.security.AbstractEncryptionFilter(すでに非推奨)

- com.tangosol.net.security.ClusterEncryptionFilter(すでに非推奨)

影響を受けるクラス

これらのクラスは、XML構成をサポートしていないか、パススルーを実行するか、またはUnsupportedOperationExceptionエラーをスローします。

- com.tangosol.io.journal.AbstractJournalRM

- com.tangosol.io.journal.FlashJournalRM

- com.tangosol.io.journal.RamJournalRM

- com.tangosol.net.WrapperCacheService

- com.tangosol.net.WrapperInvocationService

- com.tangosol.net.WrapperService

影響を受けるプロジェクト・リソース/XSD

- coherence-operational-config-base.xsd

2 ドキュメントの正誤表

この章では、12c (12.1.2)に対するOracle Coherenceドキュメントにおける変更、機能強化および修正の内容について説明します。

12c (12.1.2)に対するCoherenceドキュメントは、次のURLで入手できます。

http://docs.oracle.com/middleware/1212/coherence/index.html

この章の内容は次のとおりです。

- Coherence*Extend 12c (12.1.2)の後方互換性の例外

- Coherence .NETバージョン番号の変更

- デフォルトのニア・キャッシュ無効化戦略の変更

- 共有ライブラリとしてのGARファイルのデプロイ

- GoldenGate Hot CacheにおけるPOFシリアライズの使用

- Hibernateの追加のドキュメントによるサポート

- Springのドキュメントによるサポートは移動しました

- スティッキー・セッションおよびCoherence*Webのロックに関する誤った情報

- Coherence*Extendのバージョン互換性に関する記述の改訂

2.1 Coherence*Extend 12c (12.1.2)の後方互換性の例外

Coherence 12.1.2.xクラスタ・プロキシには、Extendクライアントのバージョン3.xとの後方互換性があります。つまり、3.xクライアントで12.1.2.xのクラスタ・プロキシに接続できます。12.1.2.xの後方互換性は、Coherence*Extendバージョンの互換性ポリシーにおける例外です。リリース12.1.2より後のクラスタ・プロキシでは、現在の例外が適用されず、後方互換性が維持されない可能性があります。

2.2 Coherence .NETバージョン番号の変更

Coherence .NETバージョン番号は、最大4桁(N.N.N.N)のみをサポートする.NETバージョン規則をサポートするように変更されました。Oracleバージョン番号は5桁(N.N.N.N.N)を使用しているため、Oracleの4桁目と5桁目が結合されて.NETバージョンの4桁目になります。マッピングの詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のCoherence .NETバージョン番号のマッピングに関する項を参照してください。

2.3 デフォルトのニア・キャッシュ無効化戦略の変更

パフォーマンスよりもネットワーク・トラフィックの軽減を優先するために、デフォルトのニア・キャッシュ無効化戦略のautoが変更されました。12c (12.1.2)以前の無効化戦略のデフォルト動作は、allに設定してください。

2.4 共有ライブラリとしてのGARファイルのデプロイ

共有ライブラリとしてのGARファイルのデプロイには、標準の共有ライブラリのデプロイに関する追加の手順が必要です。詳細は、Oracle WebLogic ServerのためのOracle Coherenceアプリケーションの開発の共有ライブラリとしてのCoherenceアプリケーションのデプロイに関する項を参照してください。

2.5 GoldenGate Hot CacheにおけるPOFシリアライズの使用

Oracle Coherence GoldenGate HotCache (HotCache)でPortable Object Format (POF)シリアライズを使用できます。POFは言語に依存しないバイナリ形式です。POFは領域と時間の両面で効率を向上させるように設計されており、Coherenceの使用時に不可欠なものとなっています。詳細は、『Oracle Fusion Middleware Oracle Coherenceの統合』のHotCacheでのPortable Object Formatの使用に関する項を参照してください。

2.6 Hibernateの追加のドキュメントによるサポート

『Oracle Fusion Middleware Oracle Coherenceの統合』のHibernateとCoherenceとの統合に関する項に加え、次のURLでCoherenceコミュニティ・プロジェクトにおけるHibernateとCoherenceとの統合に関する情報を参照できます。

https://java.net/projects/cohhib

2.7 Springのドキュメントによるサポートは移動しました

Springサポートのドキュメントは、Coherence 12c (12.1.2)製品のディストリビューションからCoherenceコミュニティ・プロジェクトに移動しました。『Oracle Fusion Middleware Oracle Coherenceの統合』ドキュメントに説明はありません。Oracle CoherenceとSpringの統合については、次のURLを参照してください。

https://java.net/projects/cohspr/

2.8 スティッキー・セッションおよびCoherence*Webのロックに関する誤った情報

『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』におけるHTTPセッションにおけるロックのトラブルシューティングに関する項には、次のように表示されています。

「HTTPセッション・アクセスに対してメンバー、アプリケーションまたはスレッドのロックを有効にすることは、セッションへのアクセスを必要とする各HTTPリクエストに対してCoherence*Webがクラスタ規模のロックを取得することを意味します。スティッキー・ロード・バランシングが使用可能でCoherence*Webスティッキー・セッション最適化が有効な場合は例外となります。」

「スティッキー・ロード・バランシングが使用可能でCoherence*Webスティッキー・セッション最適化が有効な場合は例外となります。」という文は誤解を招くため、このマニュアルの現行バージョンからは削除されました。スティッキー・セッションが有効化された場合でも、Coherence*Webでは、セッションのクラスタ規模のロックが保持されます(リクエストが完了した後にロックが解放されないだけです)。

2.9 Coherence*Extendのバージョン互換性に関する記述の改訂

Coherence*Extendのバージョン間の互換性に関する記述が改訂されました。新しい記述は次のとおりです。

ExtendプロトコルとPOFの互換性はポイント・リリース間(1.0、1.1など)では維持されますが、メジャー・リリース間(1.0、2.0など)では維持されない可能性があります。

注意:

POFでは、後方互換のシリアライズ変更がサポート可能なため、POFを使用する場合は互換性が要求されます。

12.1.2.0.1より前のリリースでは、Extendクライアントはクラスタ・プロキシとの前方互換性のみをサポートしています。つまり、Extendクライアントは、(同じメジャー・リリース内の)同じバージョン番号以上のクラスタ・プロキシと接続可能です。

リリース12.1.2.0.1以降では、Extendクライアントはクラスタ・プロキシとの前方互換性および後方互換性を両方ともサポートしています。つまり、Extendクライアントは、(同じメジャー・リリース内の)より小さいバージョン番号またはより大きいバージョン番号のクラスタ・プロキシと接続可能です。たとえば、12.1.3のExtendクライアントは、12.1.2.0.1のプロキシに接続できます。Extendクライアントの後方互換性は、バージョン3.7.1以前のプロキシではサポートされていません。

Coherence 12.1.2の後方互換性の例外

Coherence 12.1.2クラスタ・プロキシは、バージョン3のExtendクライアント(3.3、3.4、3.5、3.6および3.7)と後方互換性があります。つまり、バージョン3のクライアントは、12.1.2のクラスタ・プロキシと接続可能です。12.1.2の後方互換性は、前述のCoherence*Extendのメジャー・リリース互換性ポリシーの例外の1つです。リリース12.1.2より後のクラスタ・プロキシでは、現在の例外が適用されず、後方互換性が維持されない可能性があります。

3 Coherence 12c (12.1.2)へのアップグレード

この章では、Coherence、Coherence*Web、ActiveCacheおよびTopLink Gridを使用するアプリケーションを12c (12.1.2)にアップグレードする手順を説明します。

- WebLogic ServerでのCoherenceおよびCoherence*Webを使用するアプリケーションのアップグレード

- WebLogic ServerでのTopLink Gridを使用するアプリケーションのアップグレード

- Coherence*Extendのアップグレード

- Coherence*Webのアップグレード

- WebLogic ServerでのActiveCacheアプリケーションのアップグレード

- 非推奨となった機能の代替

- アップグレードのその他の問題

3.1 WebLogic ServerでのCoherenceおよびCoherence*Webを使用するアプリケーションのアップグレード

次の手順に従って、CoherenceおよびCoherence*Webを使用してWebLogic Serverで実行するアプリケーションをアップグレードします。

1. 既存のWebLogic Serverドメインで次を実行します。

- Coherence*Webを使用するアプリケーションを停止してアンデプロイします。

- coherence.jarおよびcoherence-web-spi.warファイルをアンデプロイします(デプロイされている場合)。

2. 手順に従って、WebLogic ServerとそのドメインをWebLogic Server 12c (12.1.2)にアップグレードします。WebLogic Serverのアップグレードについては、『Oracle Fusion Middleware Oracle WebLogic Serverのアップグレード』を参照してください。

3. coherence.jarファイルへの参照をすべて削除するようにアプリケーションを変更します。

- weblogic.xmlファイルで、coherence-web-spiファイルを参照する<library-ref>要素を削除します。

- META-INF/MANIFEST.MFファイルで、Coherenceを拡張として識別する次の行を削除します。

Extension-List: coherence
coherence-Extension-Name: coherence

- クラスパスにあるcoherence.jarファイルへの明示的な参照をすべて削除します。

4. Coherence 12c (12.1.2)で必要な設定を使用するようにアプリケーションを変更します。

- Coherenceリリース3.7.1.xでデフォルトのsession-cache-config.xmlファイルを使用していた場合、12c (12.1.2)では名前がdefault-session-cache-config.xmlに変更されたことに注意してください。
たとえば、このコンテキスト・パラメータ値をCoherenceリリース3.7.1.xアプリケーションで使用していたとします。

tangosol.coherence.cacheconfig=session-cache-config.xml

12c (12.1.2)では、これをdefault-session-cache-config.xmlに変更します。

tangosol.coherence.cacheconfig=default-session-cache-config.xml

セッション・キャッシュ・ファイル名を変更する必要はありません。カスタムのsession-cache-config.xmlを作成した場合、ファイル名はそのまま使用できます。

- アプリケーションがEARファイル内にある場合、12c (12.1.2)ではカスタムのsession-cache-configファイルのパッケージ化が変更されています。12c (12.1.2)のパッケージ化の手順については、『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』のカスタム・セッション・キャッシュ構成ファイルの使用に関する項を参照してください。

5. アプリケーションをWebLogic Serverに再デプロイします。

3.2 WebLogic ServerでのTopLink Gridを使用するアプリケーションのアップグレード

次の項では、アプリケーション・スコープ、EARスコープおよびWARスコープが指定されたクラスタで実行するアプリケーションのアップグレード方法について説明します。アプリケーションをアップグレードする前に、Coherence側の構成を最初にアップグレードする必要があります。

- Coherence側の構成のアップグレード

- アプリケーション・サーバー・スコープ指定されたCoherenceクラスタのアップグレード

- EARスコープ指定されたCoherenceクラスタのアップグレード

- WARスコープ指定されたCoherenceクラスタのアップグレード

3.2.1 Coherence側の構成のアップグレード

次の手順に従って、Coherence側の構成をアップグレードします。12c (12.1.2)以前のCoherence JARを参照する、現在使用中の12c (12.1.2)以前のCoherenceキャッシュ・サーバー起動スクリプトをすべてアップグレードする必要があります。Coherenceに付属しているスクリプトは変更する必要はありません。

1. Coherenceサーバーを停止します。

2. クラスパス(WebLogic Server 12c (12.1.2)では${ORACLE_HOME})を変更するように、Coherenceキャッシュ・サーバー起動スクリプトを変更します。
—coherence.jarを${ORACLE_HOME}/coherence/lib/coherence.jarに置き換えます。

—javax.persistence_1.*.jarを${ORACLE_HOME}/oracle_common/modules/javax.persistence_2.0.0.0_2-0.jarに置き換えます。

—com.oracle.toplinkgrid_1.1.0.0_11-1-1-6-0.jarを${ORACLE_HOME}/oracle_common/modules/oracle.toplink_12.1.2/toplink-grid.jarに置き換えます。

—org.eclipse.persistence_1.2.0.0_2-3.jarを${ORACLE_HOME}/oracle_common/modules/oracle.toplink_12.1.2/eclipselink.jarに置き換えます。

3. Coherenceサーバーを再起動します。

3.2.2 アプリケーション・サーバー・スコープ指定されたCoherenceクラスタのアップグレード

アプリケーション・サーバー・スコープ指定されたアプリケーションをCoherenceクラスタで実行している場合は、次の手順に従ってCoherence 12c (12.1.2)にアップグレードします。

1. 手順に従って、WebLogic ServerとそのドメインをWebLogic Server 12c (12.1.2)にアップグレードします。WebLogic Serverとそのドメインのアップグレードについては、『Oracle Fusion Middleware Oracle WebLogic Serverのアップグレード』を参照してください。

2. 管理対象サーバーを起動する前に、次の手順に従ってWebLogic Server側の構成をアップグレードします。

注意:

WebLogic Server 12c (12.1.2)では、toplink-grid.jarおよびcoherence.jarファイルは(coherence-web.jarおよびeclipselink.jarファイルと同様に)WebLogic Serverシステム・クラスパスに自動的に含まれます。

1. WebLogic Serverクラスパスから、toplink-grid.jarファイルへの明示的な参照をすべて削除します。次に、古い参照の例を示します。

com.oracle.toplinkgrid_1.1.0.0_11-1-1-6-0.jar
javax.persistence_1.*.jar
org.eclipse.persistence_1.2.0.0_2-3.jar

2. WebLogic Serverクラスパスから、coherence.jarファイルへの明示的な参照をすべて削除します。次に、古い参照の例を示します。

coherence.jar
coherence-web.jar
coherence-web-spi.war

3. WebLogic Serverを再起動します。

4. アプリケーションを再デプロイします。

3.2.3 EARスコープ指定されたCoherenceクラスタのアップグレード

EARスコープ指定されたTopLinkアプリケーションをCoherenceクラスタで実行している場合は、次のいずれかの方法で、Coherence 12c (12.1.2)を使用するようにアプリケーションをアップグレードできます。

- GARファイル形式を使用するようにアプリケーションをアップグレードします。「GARファイル形式の使用」を参照してください。

- 共有ライブラリを更新します。「共有ライブラリの更新」を参照してください。

- EARファイルにパッケージ化されているtoplink-grid.jarおよびcoherence.jarファイルを更新します。「EARファイルへのtoplink-grid.jarおよびcoherence.jarファイルのパッケージ化」を参照してください。

注意:

次の手順は、WebLogic ServerとそのドメインをWebLogic Server 12c (12.1.2)にアップグレード済であることを前提とします。WebLogic Serverのアップグレードについては、『Oracle Fusion Middleware Oracle WebLogic Serverのアップグレード』を参照してください。

GARファイル形式の使用

次の手順は、GARファイル形式を使用するようにアプリケーションをアップグレードすることを前提とします。このアプローチをお薦めします。GARファイル形式でのアプリケーションのパッケージ化の詳細は、『Oracle WebLogic Server Oracle Coherenceアプリケーションの開発』のWebLogic Server用のCoherenceアプリケーションの作成に関する項を参照してください。

1. アプリケーションおよびWebLogic Serverクラスパスから、CoherenceおよびTopLink Grid共有ライブラリへの参照をすべて削除します。

注意:

WebLogic Server 12c (12.1.2)では、toplink-grid.jarおよびcoherence.jarファイルは(coherence-web.jarおよびeclipselink.jarファイルと同様に)WebLogic Serverシステム・クラスパスに自動的に含まれるため、これらの参照を削除できます。

次に、Coherenceへの参照の例を示します。

coherence.jar
coherence-web.jar
coherence-web-spi.war

次に、TopLink Gridへの参照の例を示します。

com.oracle.toplinkgrid_1.1.0.0_11-1-1-6-0.jar
javax.persistence_1.*.jar
org.eclipse.persistence_1.2.0.0_2-3.jar

2. weblogic-application.xmlファイルから、coherence.jarおよびtoplink-grid.jarへの参照を削除します。

3. weblogic-application.xmlファイルから、Coherenceクラスタのプロパティを構成する<coherence-cluster-ref>要素を削除します。

4. フィルタリング・クラスローダーが構成済の場合は削除します。この機能は、weblogic-application.xmlファイルの<prefer-application-packages>要素で定義されます。coherence.jarおよびtoplink-grid.jarファイルを参照する<prefer-application-packages>要素をすべて削除します。

5. toplink-grid.jarおよびcoherence.jarファイルをEARファイル内にパッケージ化している場合は、それらをEARファイルから削除します。

6. WebLogic ServerおよびCoherenceサーバーを再起動します。

7. アプリケーションを再デプロイします。

共有ライブラリの更新

このアプローチは、toplink-grid.jarおよびcoherence.jarファイルを共有ライブラリとして参照しており、アプリケーションのパッケージ化を変更しないことを前提にします。この場合は、12c (12.1.2)バージョンのtoplink-grid.jarおよびcoherence.jarファイルを共有ライブラリとして再デプロイする必要があります。

EARファイルへのtoplink-grid.jarおよびcoherence.jarファイルのパッケージ化

このアプローチは、toplink-grid.jarおよびcoherence.jarファイルをEARファイルにパッケージ化していることを前提とします。この場合は、toplink-grid.jarおよびcoherence.jarファイルを、これらのファイルの12c (12.1.2)バージョンに置き換えます。

3.2.4 WARスコープ指定されたCoherenceクラスタのアップグレード

WARスコープ指定されたTopLinkアプリケーションをCoherenceクラスタで実行している場合は、次のいずれかの方法で、Coherence 12c (12.1.2)を使用するようにアプリケーションをアップグレードできます。

- 共有ライブラリを更新します。「共有ライブラリの更新」を参照してください。

- WARファイルにパッケージ化されているtoplink-grid.jarおよびcoherence.jarファイルを更新します。

注意:

次の手順は、WebLogic ServerとそのドメインをWebLogic Server 12c (12.1.2)にアップグレード済であることを前提とします。WebLogic Serverのアップグレードについては、『Oracle Fusion Middleware Oracle WebLogic Serverのアップグレード』を参照してください。

共有ライブラリの更新

このアプローチは、toplink-grid.jarおよびcoherence.jarファイルを共有ライブラリとして参照しており、アプリケーションのパッケージ化を変更しないことを前提にします。この場合に必要な操作は、12c (12.1.2)バージョンのtoplink-grid.jarおよびcoherence.jarファイルを使用するように共有ライブラリ参照を更新することのみです。

WARファイルへのtoplink-grid.jarおよびcoherence.jarファイルのパッケージ化

このアプローチは、toplink-grid.jarおよびcoherence.jarファイルをEARファイルにパッケージ化していることを前提とします。この場合は、toplink-grid.jarおよびcoherence.jarファイルを、これらのファイルの12c (12.1.2)バージョンに置き換えます。

3.3 Coherence*Extendのアップグレード

すべてのExtendクライアントのカスタマ(Java、C++および.NET)において、Coherence*Extendクライアントをアップグレードする前にクラスタ側をアップグレードする必要があります。これは、Coherenceクライアントおよびプロキシ・アップグレード・ポリシーに準拠しています。Coherence*Extendの現行リリースと以前のバージョンとの互換性の詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のCoherence*Extendのバージョン間の互換性に関する項を参照してください。

3.4 Coherence*Webのアップグレード

次の項では、Coherence*Webのアップグレードに関する考慮事項を説明します。

- 以前のバージョンのWebLogic用に予約されているCoherence*Web SPI

- ActiveCacheの管理対象Coherenceサーバーへの置換え

- 新しいセッション・キャッシュ構成ファイル

3.4.1 以前のバージョンのWebLogic用に予約されているCoherence*Web SPI

以前のリリースのCoherence*Webに含まれていたcoherence-web-spi.warファイルは、12c (12.1.2)では非推奨です。Coherence 12c (12.1.2)ディストリビューションではcoherence\libディレクトリにcoherence-web-spi.warファイルが含まれていますが、このファイルは以前のバージョンのWebLogic Serverとの後方互換性を維持する目的でのみ提供されています。WebLogic Server 12c (12.1.2)以降を使用している場合は、このファイルを使用または参照する必要はありません。coherence-web-spi.warファイルをWebLogic Server 12c (12.1.2)以降にデプロイしようとしても無視されます。

3.4.2 ActiveCacheの管理対象Coherenceサーバーへの置換え

デプロイされたアプリケーションでCoherenceデータ・キャッシュを簡単に使用し、セッション管理のためにCoherence*Webをシームレスに統合するためのWebLogic Serverの機能の集合であるActiveCacheは、主に以前のリリースで開発されたアプリケーションのアップグレードをサポートする目的で、12c (12.1.2)で引き続きサポートされます。ユーザーは、新しいWebLogic Server/Coherenceアプリケーションを開発するときに管理対象Coherenceサーバーの使用を検討することをお薦めします。ActiveCacheの詳細は、『Oracle Fusion Middleware ActiveCacheの使用』を参照してください。

3.4.3 新しいセッション・キャッシュ構成ファイル

以前のリリースでは、Coherence*Web SPIで使用されるCoherenceキャッシュ構成とサービスはsession-cache-config.xmlファイルで定義されていましたが、12c (12.1.2)以降は、Coherence*Webで使用されるCoherenceキャッシュ構成とサービスはdefault-session-cache-config.xmlファイルで定義され、このファイルはcoherence-web.jarファイル内にあります。default-session-cache-config.xmlファイルで定義されているデフォルト・キャッシュ構成とサービス構成は、ほとんどすべてのWebアプリケーションに対応可能です。

Webアプリケーションでsession-cache-config.xmlという名前のファイルをパッケージ化して、独自のカスタム・セッション・キャッシュ構成を作成できます。詳細は、『Oracle Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』のカスタム・セッション・キャッシュ構成ファイルの使用に関する項を参照してください。

3.5 WebLogic ServerでのActiveCacheアプリケーションのアップグレード

The 11gリリース1 (10.3.6)バージョンのActiveCacheは、『Oracle Fusion Middleware ActiveCacheの使用』に記載されています。このバージョンのActiveCacheは、WebLogic ServerおよびCoherence 12c (12.1.2)に対して機能しますが、記載されている手順の一部は不要になりました。

- ActiveCacheデプロイメント・トポロジの選択に関する項では、ActiveCacheをデプロイできるアプリケーションとデータ層の組合せ、すなわちクラスタ・トポロジについて説明しています。ActiveCacheを使用してアプリケーションをアップグレードする場合、後方互換性が必要な場合以外はOut-of-Processトポロジを使用しないでください。現行リリースでは、WebLogic Out-of-Processトポロジの使用をお薦めします。管理対象Coherenceサーバーを使用すれば、WebLogic Out-of-Processトポロジの構成が容易に行えます。

- Cache Configuration Fileの配置に関する項では、キャッシュ構成ファイルを配置する場所を説明しています。キャッシュ構成ファイルを保存する場所によってキャッシュ・スコープ(つまり、デプロイされたアプリケーションに対するキャッシュの可視性)が決まります。この項に記載している方法は有効ですが、キャッシュ構成をシステム・クラスパスに配置することは、サーバーでCoherenceを使用するアプリケーションが現在も今後も1つしか存在しない場合を除き、お薦めできません。
アプリケーションをパッケージする場合は、GARファイルの使用をお薦めします。キャッシュ構成ファイルは、GARファイルにパッケージ化されます。GARファイルおよびそのパッケージ化構造の詳細は、『Oracle Fusion Middleware Oracle WebLogic Server Oracle Coherenceアプリケーションの開発』を参照してください。

- アプリケーション・サーバー・スコープのCoherenceクラスタの構成に関する項では、Coherenceキャッシュに直接アクセスしているWebLogic Serverインスタンス上でデプロイされたすべてのアプリケーションが、1つのCoherenceクラスタの一部となるような構成について説明しています。この手順では、手順1を実行しないでください。すなわち、coherence.jarおよびactive-cache.jarファイルをシステム・クラスパスに配置しないでください。active-cache.jarファイルでは、Coherence統合モジュールをクラスパスに追加するために、MANIFESTファイルでクラスパスを使用します。リリース12c (12.1.2)において、Coherence統合モジュールはcoherence.jarに加えてサーバー・クラスパスに常に存在します。

- EARスコープのCoherenceクラスタの構成に関する項では、各EAR内にデプロイされたすべてのアプリケーションが、1つのCoherenceクラスタの一部となるような構成について説明しています。キャッシュは、EAR内のすべてのモジュールに対して表示されます。この項で説明している手順は、説明どおりには動作しません。coherence.jarがすでにシステム・クラスパスに配置されているため、「アプリケーション・スコープCoherenceクラスタにフィルタリング・クラスローダーを定義するには」の項に記載されている手順に従う必要があります。
EARスコープによる方法を使用する唯一の理由は、アプリケーションを他のCoherenceアプリケーションから分離するためです。この使用例は、GARファイルによるアプリケーション分離またはキャッシュ構成ファイルのscope要素を使用する方がうまく処理できます。別の使用例は、システム・クラスパスに配置されているものとは別バージョンのcoherence.jarを使用することですが、別バージョンの使用はお薦めできません。

- WARスコープのクラスタの構成に関する項では、デプロイされた各Webアプリケーションが、独自のCoherenceクラスタになるような構成について説明しています。キャッシュは、個々のモジュールに対してのみ表示されます。この手順では、手順1および2を実行しないでください。coherence.jarおよびactive-cache.jarを共有ライブラリにデプロイせず、MANIFESTファイルにも記載しないでください。手順3を実行してCoherenceクラスタのシステム・リソースを参照することは可能ですが、管理対象サーバーをCoherenceクラスタのメンバーにする方法をお薦めします。

- 「例3-10 tangosol-coherence-override.xml」は、ロギングの構成を記述したカスタム・キャッシュ構成ファイルを示しています。リリース12c (12.1.2)ではログが統合されているため、ロギング構成は必要ありません。

- キャッシュ・サーバーの起動に関する項には、キャッシュ・サーバーを起動する数種類の方法が示されています。Out-of-Processトポロジを管理対象Coherenceサーバーで置き換えないでください。ノード・マネージャを使用したキャッシュ・サーバーの起動に関する項に記載されている手順を、WebLogic Serverにより管理されている外部キャッシュ・サーバーのかわりに管理対象Coherenceサーバーを使用して実行しないでください。

3.6 非推奨となった機能の代替

この項では、Coherence 12c (12.1.2)で非推奨となった機能の代替について説明します。

- 非推奨のpacket-poolおよびmessage-pool要素の代替

- 非推奨のLHファイル・マネージャの代替

- 非推奨のNamedCache Lock APIの代替

- 非推奨のXmlConfigurableインタフェースの代替

3.6.1 非推奨のpacket-poolおよびmessage-pool要素の代替

packet-poolおよびmessage-pool要素は非推奨です。Coherence 12c (12.1.2)では、APIでサイズ変更を処理するようになりました。アップグレードするには、すべての構成ファイルから要素を削除してください。

3.6.2 非推奨のLHファイル・マネージャの代替

Coherence 12c (12.1.2)リリース以降、LHストア・マネージャは非推奨です。Berkeley DBの同様の機能を使用してください。

3.6.3 非推奨のNamedCache Lock APIの代替

NamedCache lock APIは非推奨です。入力プロセッサAPI (JavaおよびC++用のEntryProcessor、および.NET用のIEntryProcessor)で提供されるロック・サポートをかわりに使用してください。

3.6.4 非推奨のXmlConfigurableインタフェースの代替

Coherence 12c (12.1.2)リリースでは、com.tangosol.run.xml.XmlConfigurableインタフェースは非推奨になりました。Coherenceでは、このインタフェースを使用して、XMLパラメータをカスタム・クラスのインスタンスに注入していました。

注意:

XmlConfigurableインタフェースが非推奨になるために影響を受けるインタフェース、クラスおよびメソッドについては、「XmlConfigurableインタフェース」を参照してください。

Coherence 12c (12.1.2)リリースでは、<param-value>要素内に<instance>および<class-scheme>(または、その他のカスタム・ネームスペース)をネストするXMLを記述して、パラメータを初期化できます。

たとえば、次のJavaコードを考えてみます。

public class MyClass
{
public MyClass(String s, OtherClass o, int i) { ... }
}

public class OtherClass
{
public OtherClass(String s) { ... }
}

次のXMLを記述して、MyClassおよびOtherClassクラスを初期化できます。XMLでは、MyClassクラスが文字列Hello Worldおよび整数42で初期化されます。MyClassクラス内にあるOtherClassクラスのインスタンスは、文字列Goodbye Worldで初期化されます。

<instance>
<class-name>MyClass</class-name>
<init-params>
<init-param>
<param-value>Hello World</param-value>
</init-param>
<init-param>
<param-value>
<instance>
<class-name>OtherClass</class-name>
<init-params>
<init-param>
<param-value>Goodbye World</param-value>
</init-param>
</init-params>
</instance>
</param-value>
</init-param>
<init-param>
<param-value>42</param-value>
</init-param>
</init-params>
</instance>

3.7 アップグレードのその他の問題

次の項では、Coherence 12c (12.1.2)のアップグレード時に考慮する必要がある問題について説明します。

- Exalogic環境のDistributedCacheの新しいデフォルト

- リモートRMIクライアントからの接続

- Coherence*Extendクライアント上のキー・アソシエーション

- ニア・キャッシュの無効化戦略の変更

- BACKUP CACHE文を使用したキャッシュのシリアライズされた形式の書込み

- 新しいキャッシュ構成要素: resource-config

- JVMのアップグレード

3.7.1 Exalogic環境のDistributedCacheの新しいデフォルト

Exalogic環境内では、DistributedCacheがExabusの最適化されたトランスポートにデフォルト設定されるようになりました。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のDistributedCacheサービス・パラメータに関する項にある<reliable-transport要素の説明を参照してください。

3.7.2 リモートRMIクライアントからの接続

リモートRMIクライアント(別の物理コンピュータ)から接続するときは、java.rmi.server.hostname RMIシステム・プロパティの値をクラスタ・メンバーのIPアドレスに設定してスクリプトに追加してください。このアドレスによって、クライアントに送信されるRMIスタブに正しいサーバー・アドレスが含まれることが保証されます。詳細は、『Oracle Fusion Middleware Oracle Coherenceのマネージメント』のOracle Coherence MBeanへのリモート・アクセスの許可に関する項を参照してください。

3.7.3 Coherence*Extendクライアント上のキー・アソシエーション

キー・アソシエーションは、Extendクライアント上でデフォルトで処理されるようになります。クラスタ上のキー・クラスを強制的に処理するために、クラスタ上でキー・アソシエーションに依存している既存のクライアント実装(Javaクライアントを含む)でdefer-key-association-checkパラメータを設定する必要があります。

キー・アソシエーション処理をExtendクライアントによってではなくクラスタ側で実行するには、クライアント側キャッシュの構成で<remote-cache-scheme>要素内の<defer-key-association-check>要素をtrueに設定します。次に例を示します。

<remote-cache-scheme>
...
<defer-key-association-check>true</defer-key-association-check>
</remote-cache-scheme>

詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』のキー・アソシエーション・チェックの遅延に関する項を参照してください。

3.7.4 ニア・キャッシュの無効化戦略の変更

パフォーマンスよりもネットワーク・トラフィックの軽減を優先するために、デフォルトのニア・キャッシュ無効化戦略のautoが変更されました。12c (12.1.2)以前の無効化戦略のデフォルト動作は、allに設定してください。詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のニア・キャッシュの無効化戦略に関する項を参照してください。

3.7.5 BACKUP CACHE文を使用したキャッシュのシリアライズされた形式の書込み

BACKUP CACHE文を使用して、指定されたキャッシュのシリアライズ形式を、指定されたファイル名で表されるファイルに書き込みます。3.xから12.1.xの間に、バックアップの前方互換性または後方互換性はありません。『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のキャッシュのシリアライズされた形式のファイルへの書込みに関する項を参照してください。

3.7.6 新しいキャッシュ構成要素: resource-config

resource-config要素には、com.sun.jersey.api.core.ResourceConfigクラスを拡張するクラスの構成情報を記述します。HTTPアクセプタでインスタンスを使用して、指定のコンテキスト・パスにマップされているCoherence RESTアプリケーション用のリソースとプロバイダ・クラスをロードします。複数のリソース構成クラスを構成して、異なるコンテキスト・パスにマップできます。詳細は、『Oracle Fusion Middleware Oracle Coherenceリモート・クライアントの開発』の組込みHTTPサーバーを指定したデプロイに関する項を参照してください。

3.7.7 JVMのアップグレード

Coherence 12c (12.1.2)は、Oracle HotSpot JVM 1.7および1.7レベルのその他のJVMでサポートされています。JRockit 1.7は含まれないため、JRockitは必要ありません。ExtendクライアントはJVM 1.6以降(JRockitを含む)でサポートされています。詳細は、『Oracle Fusion Middleware Oracle Coherenceの管理』のJVMの推奨事項に関する項を参照してください。

オラクル社の法律上の注意点について

コピーライトについて

Copyright © 1994-2014, Oracle and/or its affiliates.All rights reserved.

商標と登録商標について

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

制限付権利

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション（人的傷害を発生させる可能性があるアプリケーションを含む）への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性（redundancy）、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

ドラフトのアルファ版およびベータ版ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。オラクル社およびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。