このドキュメントでは、最新の情報と、正規のマニュアルにはまだ記載されていない情報について説明します。
Oracle TimesTen In-Memory Databaseをインストールするには、インストール・メディアからsetup
を実行します。
インストール情報については、
『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』(install.pdf
)を参照してください。このファイルは、インストール・メディアのルートにあるdoc
ディレクトリに格納されています。
このマニュアルの構成は次のとおりです。
1. プラットフォーム
2. ソフトウェア要件およびインストール
3. ディスク領域の要件
4. 製品内容
5. 事前通知
6. このリリースでの変更点
7. 既知の問題および制限事項
8. Oracleサポート・サービス
9. 著作権情報
1. プラットフォーム
Oracle TimesTen In-Memory Databaseは、次の環境でサポートされています。
- POWERシステム用のAIX 5L 5.2(パッチ・レベル5200-08以上)および5.3(32-bitおよび64-bit)。 コンパイルおよびテストには、XL C/C++ Visual Age V7コンパイラが使用されています。 AIX 5.2および5.3の両方に、同じバージョンのC++ランタイムが必要です。
- Intel IA-32、EM64TおよびAMD64 CPU用のAsianux 2.0(32-bitおよび64-bit)。コンパイルには、gcc 3.2.3が使用されています。テストには、gcc 3.2.3、3.4.3および4.1.0が使用されています。
- PA-RISC CPU用のHP-UX 11i、11i v2および11i v3(32-bitおよび64-bit)。コンパイルおよびテストには、HPコンパイラが使用されています。
- Itanium2用のHP-UX 11i v2および11i v3(32-bitおよび64-bit)。コンパイルおよびテストには、HPコンパイラが使用されています。
- AlphaChip EV68 CPU用のHP Tru64 UNIX 5.1B。コンパイルおよびテストには、Compaq C/C++ 6.5コンパイラが使用されています。
- Intel IA-32、EM64TおよびAMD64 CPU用のMicrosoft Windows 2000、Windows XPおよびWindows Server 2003。コンパイルおよびテストには、Intel 8コンパイラが使用されています。Visual C++ 6.0およびVisual C++ 7.0(.NET)もサポートされます。
- Intel IA-32、AMD64およびEM64T CPU用のMontaVista Linux Carrier Grade Edition 4.0(32-bitおよび64-bit)。 コンパイルには、gcc 3.2.3が使用されています。テストには、gcc 3.0および3.2が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.6および4.1.0が使用されています。
- Intel IA-32、EM64TおよびAMD64 CPU用のOracle Enterprise Linux 4および5(32-bitおよび64-bit)。コンパイルには、gcc 3.2.3が使用されています。テストには、gcc 3.2.3、3.4.3および4.1.0が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.6および4.1.0が使用されています。
- Intel IA-32、EM64TおよびAMD64 CPU用のRed Hat Enterprise Linux AS、ES、WS 3、WS 4およびWS 5(32-bitおよび64-bit)。コンパイルには、gcc 3.2.3が使用されています。テストには、gcc 3.2.3、3.4.3および4.1.0が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.6および4.1.0が使用されています。
- 64-bit Intel Itanium2 CPU用のRed Hat Enterprise Linux AS、ES、WS 3、WS 4およびWS 5。コンパイルおよびテストには、Intel 8.1が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.5および4.1.0が使用されています。
- UltraSparcアーキテクチャCPU用のSolaris 8、9および10(32-bitおよび64-bit)。コンパイルには、Sun Studio 11が使用されています。gcc 3.2.3を使用してコンパイルされたTimesTenクライアント・ライブラリとともに提供されます。
- AMD64 CPU用のSolaris 10(32-bitおよび64-bit)。コンパイルおよびテストには、Sun Studio 10コンパイラが使用されています。
- Intel Itanium2 CPU用のSuSE Linux Enterprise Server 10 64-bit。コンパイルおよびテストには、gcc 4.1.0が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.5および4.1.0が使用されています。
- Intel IA-32、EM64TおよびAMD64
CPU用のSuSE Linux Enterprise Server 9および10(32-bitおよび64-bit)。 コンパイルには、gcc 3.2.3が使用されています。コンパイルおよびテストには、gcc 4.1.0が使用されています。コンパイルおよびテストには、Intel 9.1が使用されています。クライアントおよびサーバーのテストには、gcc 3.2.3、3.4.6および4.1.0が使用されています。
Oracle TimesTen In-Memory Database TTClassesライブラリは、各プラットフォームの他のライブラリを構築するために使用されたコンパイラを使用してコンパイルされています。使用されたコンパイラは、install_dir/lib
で、libttclasses.so
に付いているコンパイラの名前を調べることで確認できます。たとえば、libttclasses.so.gcc346
は、gcc 3.4.3コンパイラを使用してコンパイルされています。他のコンパイラを使用するには、TTClassesライブラリを再構築する必要があります。
Windowsでは、デフォルトのTTClassesライブラリはMicrosoft Visual C++ 6を使用して構築されています。これらのライブラリは、install_dir/lib
およびinstall_dir/bin
に格納されています。TTClassesライブラリの構築には、Microsoft Visual C++ 7およびMicrosoft Visual C++8も使用されます。これらのライブラリは、それぞれinstall_dir/ttclasses/vc7
およびinstall_dir/ttclasses/vc8
に格納されています。Microsoft Visual C++ 6で構築されたライブラリではなく、これらのライブラリを使用するには、ttclasses.dll
をinstall_dir/bin
ディレクトリにコピーし、ttclasses.lib
をinstall_dir/lib
ディレクトリにコピーします。
2. ソフトウェア要件およびインストール
ソフトウェア要件については、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』を参照してください。
3. ディスク領域の要件
次の表に、通常のインストールにおけるディスク領域の要件を示します。 「移動可能」という要件は、インストール時にユーザーが指定したファイル・システムにコンポーネントがインストールされることを示します。変数install_dirは、現在のリリースのTimesTenがインストールされるディレクトリを示します。TimesTenリリース7.0のroot
インスタンスのデフォルトのインストール・ディレクトリは次のとおりです。
- Windowsの場合:
C:\TimesTen\tt70_
bits
bits は、32または64のいずれかで、プラットフォームのビットレベルを示します。 - HP-UX、SolarisおよびLinuxの場合:
/opt/TimesTen/tt70
- AIXの場合:
/usr/lpp/TimesTen
/tt70
各オペレーティング・システムでは、移動できないシステム・ディレクトリに特定のファイルがインストールされます。表はroot
インスタンスを想定し、移動可能なファイルを示しています。
TimesTenのドキュメントをインストールする場合は、表に示す数値に30MBを足してください。
オペレーティング・ システム
|
インストール・タイプ
|
ファイル・システム
|
移動可能
|
必要な領域
|
Windows 2000、XPまたは2003(32-bit)
|
TimesTen Data Manager
| |
はい
|
125MB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
150MB
|
Windows 2000、XPまたは2003(64-bit)
|
TimesTen Data Manager
| |
はい
|
125MB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
170MB
|
Solaris 8、9および10(32-bitまたは64-bit)
|
TimesTen Data Manager
| |
はい
|
170MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
175MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
Solaris 10 x86およびx86-64
|
TimesTen Data Manager
| |
はい
|
255MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
260MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
x86 CPU用のAsianux 2.0、 MontaVista Linux Carrier Grade Edition 4.0、 Oracle Enterprise Linux 4および5、 Red Hat Enterprise Linux ES、AS、WS 3、WS 4、WS 5、SUSE Linux Enterprise Server 9および10(32-bit)
|
TimesTen Data Manager
| |
はい
|
145MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
65MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
150MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
x86-64 CPU用のAsianux 2.0、 MontaVista Linux Carrier Grade Edition 4.0、 Oracle Enterprise Linux 4および5、 Red Hat Enterprise Linux ES、AS、WS 3、WS 4、WS 5、 SUSE Linux Enterprise Server 9および10(64-bit)
|
TimesTen Data Manager
| |
はい
|
140MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
145MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
Intel Itanium2 CPU用のRed Hat Enterprise Linux ES、AS、WS 3、WS 4、WS 5、およびSUSE LINUX Enterprise Server 10(64-bit)
|
TimesTen Data Manager
| |
はい
|
235MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
80MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
245MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
PA-RISC用のHP-UX 11i、11i v2および11i v3(32-bitまたは64-bit)
|
TimesTen Data Manager
| |
はい
|
180MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client
| |
いいえ
|
50KB
|
TimesTen Client
| |
いいえ
|
50KB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
195MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
IA32またはIA64用のHP-UX 11i v2および11i v3
|
TimesTen Data Manager
| |
はい
|
190MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
80MB
|
TimesTen Client
| |
いいえ
|
50KB
|
TimesTen Client
| |
いいえ
|
50KB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
200MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
AIX 5.2および5.3(32-bitまたは64-bit)
|
TimesTen Data Manager
| |
はい
|
220MB
|
TimesTen Data Manager
| |
いいえ
|
50KB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client
| |
いいえ
|
50KB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
230MB
|
TimesTen Client、ServerおよびData Manager
| |
いいえ
|
50KB
|
Tru64 5.1B-2 UNIX
|
TimesTen Data Manager
| |
はい
|
155MB
|
TimesTen Client
| |
はい
|
70MB
|
TimesTen Client、ServerおよびData Manager
| |
はい
|
160MB
|
4. 製品内容
Oracle TimesTen In-Memory Databaseには、次のものが含まれています。ドキュメント・タイトルが日本語になっているものはOTN-J(http://www.oracle.com/technology/global/jp/documentation/index.html)にて日本語版を公開しているものを表しています。
- 『Oracle TimesTen In-Memory Databaseリリース・ノート』(このドキュメント): このドキュメントには、正規のマニュアルには記載されていない最新情報が示されています。
- Oracle TimesTenのインストール・メディア: このインストール・メディアには、Oracle TimesTenライブラリと実行可能ファイル、デモ・プログラム、ユーティリティおよびオンライン・ドキュメントが収められています。
インストール・メディアに収められているマニュアルは、次のとおりです。
- 『Oracle TimesTen In-Memory Database追加情報』:
このドキュメントには、TimesTenリリース7.0.4.0.0時点の新機能が記載されています。次のドキュメントもあわせてお読みください。次のドキュメントに記載されている情報はリリース7.0.3.0.0時点のもので、追加情報またはリリース・ノートで特に指定していないかぎり、このリリースに適用されます。(docaddendum.pdf) - 『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』:前述の説明を参照してください。(install.pdf)
- 『Oracle TimesTen In-Memory Database概要』: このマニュアルには、Oracle TimesTenの機能の説明と、開発者がOracle TimesTenアプリケーションを計画する際に役立つ情報が示されています。(intro.pdf)
- 『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』: TimesTenの構成と、ttIsqlユーティリティを使用したデータ・ストアの管理についての情報が示されています。また、TimesTen用の基本的なチュートリアルも含まれています。(operations.pdf)
- 『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』:
このマニュアルには、CアプリケーションのコンパイルとそれをOracle TimesTenにリンクする方法、およびOracle TimesTenデータ・ストアの設定方法と使用方法が示されています。
また、エラー処理、イベント管理およびパフォーマンス・チューニングに関するトピックも含まれています。さらに、C言語固有のすべてのAPIに関するリファレンスも含まれています。(C_dev.pdf)
- 『Oracle TimesTen In-Memory Database Java開発者およびリファレンス・ガイド』: このマニュアルには、JavaアプリケーションのコンパイルとそれをOracle TimesTenにリンクする方法、およびOracle TimesTenデータ・ストアの設定方法と使用方法が示されています。また、エラー処理、イベント管理およびパフォーマンス・チューニングに関するトピックも含まれています。アプリケーション・サーバーを使用したOracle TimesTenの構成についての情報も含まれています。さらに、Java言語固有のすべてのAPIのリファレンスも含まれています。(java_dev.pdf)
- 『Oracle TimesTen In-Memory Database APIリファレンス・ガイド』: このマニュアルには、Oracle TimesTenのすべてのユーティリティ、プロシージャおよびAPIと、TimesTenのその他の機能のリファレンス情報が示されています。(tt_ref.pdf)
- 『Oracle TimesTen In-Memory Database SQLリファレンス・ガイド』: このマニュアルには、TimesTenのすべてのSQL文、式および関数のリファレンス情報が示されています。また、TimesTen SQLの拡張機能の情報も含まれています。(sql.pdf)
- 『Oracle TimesTen In-Memory Databaseエラー・メッセージおよびSNMPトラップ』: このマニュアルには、TimesTenのエラー・メッセージのリファレンス情報、およびTimesTenでSNMPトラップを使用するときの情報が示されています。(error_ref.pdf)
- 『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』: このマニュアルには、Oracle TimesTenレプリケーションの動作の理解に役立つ情報と、一般的に最も必要とされるタスクの実行方法を示す手順を追った説明および例が示されています。(replication.pdf)
- 『Oracle TimesTen Cache Connect to Oracle開発者および管理者ガイド』: このマニュアルには、Oracleデータ用のOracle TimesTenキャッシュの作成方法および管理方法の理解に役立つ情報が示されています。(cacheconnect.pdf)
- 『Oracle TimesTen In-Memory Database TTClassesガイド』:このマニュアルには、Oracle TimesTen C++インタフェース・クラス・ライブラリの説明が示されています。ライブラリでは、ODBCの最も一般的な機能を含めたラッパーが提供されます。(ttclasses.pdf)
- 『Oracle TimesTen In-Memory Databaseトラブルシューティング・プロシージャ・ガイド』:このマニュアルには、TimesTenの使用時に発生するいくつかの問題のトラブルシューティング方法が示されています。(troubleshooting.pdf)
- 『Microsoft ODBC Programmer's Manual』このMicrosoft社のマニュアルには、Oracle TimesTenデータ・ストアへのアクセスに使用するODBCインタフェースの説明が示されています。UNIXおよびWindows NT用の製品では、ODBCバージョン2.0を参照します。UNIX用のOracle TimesTenでは、ODBCバージョン2.5がサポートされています。 バージョン2.0と2.5の違いについては、『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』を参照してください。(ms.odbc.pdf)
- 『Oracle TimesTen In-Memory Databaseリリース・ノート』: 前述の説明を参照してください。
- 『Oracle TimesTen In-Memory Database動作の変更点』(behaviorchanges.txt)
前述の内容で1つでも不足しているものがある場合は、Oracleサポート・サービスにご連絡ください。詳細は、「Oracleサポート・サービス」を参照してください。
5. 事前通知
5.1 リリース7.0.3.0.0での非推奨アイテム
ttCacheMonitor
組込みプロシージャは非推奨です。下位互換性のためにのみサポートされていますが、将来のリリースで廃止される予定です。非推奨のアイテムを使用すると、警告メッセージが表示されます。
5.2 リリース7.0.1.0.0での削除アイテム
次に示すアイテムは削除されました。
- enableTables 属性は、JMS/XLA構成ファイルではサポートされなくなりました。ブックマークの管理には、ttXlaBookmarkCreate、ttXlaBookmarkDelete、ttXlaSubscribeおよびttXlaUnsubscribe 組込みプロシージャを使用します。
5.3 リリース7.0.1.0.0での非推奨アイテム
次に示すアイテムは下位互換性を目的としてサポートされますが、将来のリリースで削除される予定です。非推奨のアイテムを使用すると、警告メッセージが表示されます。
- Threadsafe 属性。デフォルトでは、同じデータ・ストアに対する複数の同時接続がサポートされています。
- ExclAccess 属性。データ・ストアは共有モードでロードされます。
- SMPOptLevel 属性。
- Logging属性のディスクレス・モードおよびディスクレス・データ・ストア・モード。
- 一時データ・ストアのレプリケーション。
- SELECT FOR UPDATE ON ORACLE SQL文。
- CREATE CACHE GROUPおよびALTER CACHE GROUP SQL文のWITH LIMIT句。
- CREATE CACHE GROUPおよびALTER CACHE GROUP SQL文のDURATIONオプション。
- 制限付きキャッシュ・グループ。
- ttCachePolicy 組込みプロシージャは、ttCachePolicySetに置き換えられました。
- ttRepPolicy 組込みプロシージャは、ttRepPolicySet に置き換えられました。
- ttXlaDeleteBookmark 組込みプロシージャは、ttXlaBookmarkDelete に置き換えられました。
- JDBCクラス・ファイル:
classes14.jar
は、ttjdbc14.jar
に置き換えられました。classes15.jar
は、ttjdbc5.jar
に置き換えられました。 ttCacheAgingMemoryThresholdSet
およびttCacheAgingIntervalSet
組込みプロシージャ。
5.4 リリース7.0.1.0.0で削除されたリリース6.0での非推奨アイテム
次に示すアイテムは、Oracle TimesTen In-Memory Databaseリリース6.0では非推奨でしたが、下位互換性を目的としてサポートされていました。これらのアイテムは、リリース7.0.1.0.0からは削除されています。
- ttRepRRXactIdGet 組込みプロシージャは削除されました。かわりにttRepXactTokenGet を使用します。
- ttRepRRXactStatus 組込みプロシージャは削除されました。かわりにttRepXactStatus を使用します。
- SQL_C_ADDR ODBC型は削除されました。
- ttRepDuplicate およびttRepDuplicateAcc ユーティリティAPIは、ttRepDuplicateEx に置き換えられました。
- 組込みプロシージャの名前が次のように変更されました。以前の名前はサポートされなくなりました。
- ttCGGenSQL は、ttCacheSqlGet に変更されました。
- ttCGMonitor は、ttCacheMonitor に変更されました。
- ttCacheSetMemoryThreshold は、ttCacheAgingMemoryThresholdSet に変更されました。
- ttCacheSetAgingIntervalは、ttCacheAgingIntervalSetに変更されました。
- ttCachePropagateFlag は、ttCachePropagateFlagSet に変更されました。
- ttOracleAgentStart は、ttCacheStart に変更されました。
- ttOracleAgentStop は、ttCacheStop に変更されました。
- ttOracleAgentPolicy は、ttCachePolicy に変更されました。
- ttAdmin
-oracleUidPwdSet
は、ttAdmin -cacheUidPwdSet
に変更されました。
- ttAdmin 、ttMigrate およびttRepAdmin
-duplicate
の引数に対して次のようにコマンドラインが変更されました。以前の引数名はサポートされなくなりました。
- -
oracleUid
は、-cacheUid
に変更されました。 - -
oraclePwd
は、-cachePwd
に変更されました。 - ttAdmin
-oracleUidPwdSet
は、ttAdmin -cacheUidPwdSet
に変更されました。 - ttAdmin
-oraAgentStart
は、ttAdmin-cacheStart
に変更されました。 - ttAdmin
-oraAgentStop
は、ttAdmin -cacheStop
に変更されました。 - ttAdmin
-oraAgentPolicy
は、ttAdmin -cachePolicy
に変更されました。
- ttIsqlコマンド
cggensql
は、cachesqlget
に変更されました。cggensql
コマンドはサポートされなくなりました。 - SNMPトラップの名前が次のように変更されました。
- Oraは、Cacheに変更されました。
- Oracle Cache Agentは、Cache Agentに変更されました。
- TimesTen Oracle Connectは、Timesten Cacheに変更されました。
- Windowsで環境変数を設定するTimesTenの
ttVars.bat
スクリプトは、次のものに置き換えられました。
- install_dir
/bin/ttenv.bat
- install_dir
/demo/ttdemoenv.bat
- UNIXで環境変数を設定するTimesTenの
ttSetEnv.csh
およびttSetEnv.sh
スクリプトは、次のものに置き換えられました。
- install_dir
/bin
: ttenv.csh
およびttenv.sh
- install_dir
/demo
: ttdemoenv.csh
およびttdemoenv.sh
6. このリリースでの変更点
6.1 リリース7.0.4.0.0からリリース7.0.5.0.0での変更点
6.1.1 このリリースでの新機能
- TimesTenリリース7.0.5のインストーラでは、「In-Memory Database Cache」(以前のCache Connect)という名称が使用されます。 『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』およびその他のドキュメントでは、このコンポーネントを示す際、引き続き「Cache Connect」という名称が使用されています。
- エラー・メッセージ5120の内容は、「No matching unique index with not null columns, unique key constraint with not null columns, or primary key constraint on table table_name, cache operations are restricted.」に変更されました。
6.1.2 このリリースでの不具合の修正
- SELECT文でアサーションが発生するという問題は修正されました。 (Oracle Bug#6518339)
- サーバー(ttsrv70.exe)の起動時にTimesTenのメイン・デーモンでハンドル・リークが発生するという問題は修正されました。 (Oracle Bug#6726315)
- LOAD CACHE GROUP文でbulkfetch句を使用しても自動リフレッシュ状態がPAUSEDからONにならないという問題は修正されました。 (Oracle Bug#6730871)
- 以前のリリースでは、ASYNCHRONOUS WRITETHROUGHスキームを使用するアクティブ・スタンバイ・ペアからOracleへの接続が失われると、アクティブ・ストアへの後続の接続がハングしました。 このリリースでは、Oracleへの接続が切断されたアクティブ・ストアには、新しい接続を作成できます。(Oracle Bug#6759207)
- 以前のリリースでは、アクティブ・スタンバイ・ペアの作成時に、Oracleに対する更新が失われることがありました。 このリリースでは、Oracleに対する更新が保留されている間は、アクティブ・スタンバイ・ペアが作成されないようになりました。 (Oracle Bug#6779593)
- レプリケーション競合レポートのDelete行に不要な用語(from)が含まれた問題は修正されました。 (Oracle Bug#6805951)
- レプリケーション・プロセスが接続されている間はレプリケーション・エージェントを停止できなかった問題は修正されました。 (Oracle Bug#6820765)
- 以前のリリースでは、警告メッセージ「FULL AUTOREFRESH FOR INCREMENTAL AUTOREFRESH TABLE」に、誤った順序でオブジェクト名が示されました。この問題は修正されました。 (Oracle Bug#6822671)
- 以前のリリースでは、主キーでのUPDATEを伴うMERGE操作で、アサーションが発生する場合がありました。この問題は修正されました。 (Oracle Bug#6822705)
- 以前のリリースでは、レプリケーション・スキームにAWTキャッシュ・グループを含めるように変更すると、新しいキャッシュ・グループが除外されました。 このリリースでは、通常のレプリケーション・スキームにAWTキャッシュ・グループを含めることができます。 (Oracle Bug#6826642)
- 以前のリリースでは、キャッシュ・グループが定義されていないデータ・ストアでの複製操作(ttrepadmin -duplicate)で-keepCGオプションを使用すると、ユーザーに対して警告メッセージが表示されました。 このような警告は戻されなくなりました。 (Oracle Bug#6834313および#6878504)
- ASYNCHRONOUS WRITETHROUGHが定義されたアクティブ/スタンバイ・スキームを削除すると、CPUの使用率が上がりスピンが発生するという問題は修正されました。 (Oracle Bug#6837867)
- 以前のリリースでは、アクティブからスタンバイ・マスターへのフェイルオーバー直後に、バッチ150でエラー・メッセージ5210および5059が戻されました。これらのエラーは、アプリケーションが高いトランザクション・レートで実行されているときに発生しました。この問題は修正されました。 (Oracle Bug#6844811)
- ttRepStateSet(`ACTIVE')へのコールで、レプリケーションの状態が適切に設定されない場合があるという問題は修正されました。 (Oracle Bug#6844716)
- 以前のリリースでは、COUNT(*)操作中に保持される共有索引ラッチによりシリアライズが発生しました。この問題は修正されました。 (Oracle Bug#6845123)
- 以前のリリースでは、同じトランザクション内でCREATE ACTIVE STANDBY文およびttRepStateSetへのコールが発生すると、状態が変更されていないためにエラーが戻される場合がありました。 このリリースでは、レプリケーションの状態を変更するためにttRepStateSet組込みプロシージャをコールすると、コミット時に状態が変更されます。 (Oracle Bug#6864683)
- 以前のリリースでは、Linuxでクライアント・ライブラリがサーバーに接続できないと、タイムアウトになる場合がありました。 現在は、タイムアウトまでの時間がさらに短くなっています。 (Oracle Bug#6869169)
- オプティマイザが最適な問合せ計画を選択しない場合があるという問題は修正されました。 (Oracle Bug#6872003)
- バッチ・サイズが255行を超えるバルク挿入でエラーが発生する場合があるという問題は修正されました。 この場合、挿入時にエラー以外の行がスキップされます。 (Oracle Bug#6926754)
6.2 リリース7.0.3.4.0からリリース7.0.4.0.0での変更点
6.2.1 このリリースでの新機能
このリリースでの新しいプラットフォーム・サポート、構文および情報については、『Oracle TimesTen In-Memory Database追加情報』を参照してください。
- Oracle 11gリリース1は、Linux x86の32-bitおよび64-bitプラットフォーム、およびWindows 32-bit版のTimesTen Cache Connect to Oracleでサポートされています。
- JDK 6およびJRockitは、TimesTenでの動作が保証されています。
- Intel Cコンパイラは、このリリースでは、Linuxプラットフォームでサポートされています。
- このリリースでは、アクティブ・スタンバイ・ペアのレプリケーションの使用時に、ASYNCHRONOUS WRITETHROUGH(AWT)キャッシュ・グループを使用してリモートの障害時リカバリ・サイトを作成できます。
- このリリースでは、
ttCacheAwtMonitorConfig
組込みプロシージャが追加されました。この組込みプロシージャを使用してASYNCHRONOUS WRITETHROUGH(AWT)キャッシュ・グループのパフォーマンスを監視すると、AWTワークフローでのタスクの実行にかかる時間を判断できます。監視結果を表示するには、-awtmoninfoおよび-showstatusコマンドを使用してttRepAdminユーティリティを実行します。 - このリリースでは、XLA更新レコードの
ttXlaUpdateDesc_t
ヘッダーに、エージング削除を示すフラグが1行追加されています。フラグはTT_AGING
です。また、カスケード削除を示すフラグも追加されています。フラグはTT_CASCDEL
です。 - このリリースでは、SQL文の実行時間がユーザー指定の問合せのしきい値(秒)を超えたときに、サポート・ログに警告を書き込み、SNMPトラップをスローするようにTimesTenを構成できます。この場合も実行は継続され、問合せのしきい値による影響は受けません。
- このリリースでは、新しいスクリプト
install_dir/bin/autorefreshCleanUp.sql
が追加されています。install_dir/bin/autorefreshCleanUp.sql
スクリプトは、Oracle Databaseで自動リフレッシュ・オブジェクトをクリーンアップするように設定できます。 - このリリースでは、TimesTenのメイン・デーモン・オプション-
shmLocalityHint
が新しく追加されています。HP-UX ccNUMAシステムでTimesTenデータ・ストアが格納される共有メモリー・セグメントの場所を指定できます。 - アクティブ・スタンバイ・ペアのレプリケーション構成でマスター・データ・ストア間のハンドシェークが変更されています。マスター・データ・ストアの初回接続時に、両方のマスター・データ・ストアがACTIVE状態であることが検出された場合、最初にACTIVE状態に設定された方が無効になります。無効なデータ・ストアが再度有効になったときに、トラップされたトランザクション(新しくスタンバイ・マスターとなったためにレプリケートができなくなったレプリケート可能トランザクション)がない場合、そのデータ・ストアは自動的にSTANDBY状態に設定されます。また、そのようなトランザクションがある場合は、IDLE状態のままになります。詳細は、『Oracle TimesTen In-Memory Database追加情報』を参照してください。
6.2.2 このリリースでの不具合の修正
- 同期モードにおけるJMS/XLAのパフォーマンスが改善されました。(Oracle Bug#5945987)
- Javaのバッチ更新が失敗した結果、一般的なエラー例外がスローされる問題は修正されました。(Oracle Bug#6348331)
- 以前のリリースでは、連続して多数のエラーが発生する、実行時間の長いレプリケート・トランザクションの処理は非効率的であり、レプリケーションに時間がかかりました。この問題は修正されています。(Oracle Bug#6489318)
- 自動リフレッシュの検証で数値の範囲がエラーになるという問題は修正されています。(Oracle Bug#6519698)
- 以前のリリースでは、メッセージ・ログのパスに指定されたディレクトリが存在しない場合、TimesTen Serverが起動せず、TimesTenのエラー・メッセージ400が返されました。このリリースでは、TimesTen Serverは、欠落したデーモン・ログを無視して起動します。(Oracle Bug#6530688)
- 以前のリリースでは、結合操作の最終マテリアライズ中に、誤った推定値が使用されました。この問題は修正されました。(Oracle Bug#6614526)
- 以前のリリースでは、ポート・スキャナなどのツールからサーバー・ポートへの接続が試行されると、サーバーは接続を拒否しましたが、接続を処理するために割り当てられたデータ構造は削除されなかったためにファイル・リークが発生しました。 接続プロセスが終了しても、サーバーのソケットはCLOSE_WAIT状態のままでした。つまり、接続プロセスが終了してもデータ構造は残るため、オープン・ソケットはそのまま残りました。 このリリースでは、オープン・ファイルが表示されることはなく、サーバーは通常の処理を再開します。 (Oracle Bug#6616674)
- 64-bitデータベースのレプリケーション・スキーマ情報を保存しているときに、ttMigrateがエラー22003を伴って失敗するという問題は修正されました。(Oracle Bug#6666087)
- このリリースでは、複雑な問合せが迅速に準備されるように、問合せオプティマイザが改善されています。以前は、複雑な問合せの準備に時間がかかり、ユーザーが指定したSQLQueryTimeout値によってはタイムアウトになる場合がありました。(Oracle Bug#6677307)
- 7.0.3.x.xのTimesTenクライアントでは、6.0より前のTimesTen Serverには接続されていないように見え、「接続属性が定義されていない」という警告が戻されました。 7.0.4では、6.0より前のTimesTenデータ・ストアがロードされる際、単なる警告としてその警告が表示されることはなくなりました。(Oracle Bug#6694356)
- レプリケーション・スキームのサブスクライバ・データ・ストアが、マスター側より多くのヒープ・メモリーを使用したためにメモリー不足になり、これによってレプリケーションが失敗するという問題は修正されました。(Oracle Bug#6703028)
- まれに、AWTキャッシュ・グループの使用時に、キャッシュ管理者ユーザーの名前/パスワードの有効な組合せを使用しても、Oracleにログインできないことがありました。 この場合、TimesTenでは、誤ったUID(root)とともにエラー・メッセージ5131が戻されました。この問題は修正されました。(Oracle Bug#6712083)
- 以前のリリースでは、ユーザーが自動リフレッシュを指定すると、キャッシュ表にUPDATEアクティビティがなくても、Oracle Databaseで不要なSELECT FOR UPDATE操作およびロールバック操作が実行されました。この問題は修正されました。(Oracle Bug#6730151)
- レプリケーション・エージェントやXLAアプリケーションなどのログ・リーダーで
sbLogBlkLRPtrExpand
ファンクションを実行するとアサーション障害がトリガーされる場合があるという問題は修正されました。(Oracle Bug#6732174) - 以前のリリースでは、境界についての特定の条件下でレプリケーションを使用すると、スレッドの送信時に、ログ・レコードの終わりを超える無効なデータが読み取られる場合がありました。これにより、適用スレッドに誤ったコミット・チケット番号が送信され、トランザクションが拒否されました。この場合、そのAWTキャッシュ・グループはレプリケートされていて、行はOracle Databaseから失われました。これは、トランスミッタでの読取りの前に、適切な長さをチェックすることにより修正されました。(Oracle Bug#6736361、6735874)
- 以前のリリースでは、特定の条件下で、malloc障害の誤ったエラーがawterrsファイルに表示されました。この問題は修正されました。(Oracle Bug#6736460)
- 以前のリリースでは、50%未満の値でコールすると、ttOptEstimateStats組込みプロシージャでコア・ダンプが出力されました。この問題は修正されました。(Oracle Bug#6754924)
- ディスクから削除される一時データ・ストアのログ・ファイルにチェックポイントが記録されないという問題は修正されました。(Oracle Bug#6758437)
- TimesTenのキャッシュ・エージェントが、OCIライブラリでクラッシュすることがある問題は修正されました。このリリースでは、TimesTenはキャッシュ・エージェントの再起動によってクラッシュから自動的にリカバリします。(Oracle Bug#6765879)
- 外部キーを持つ表でttMigrate -rを実行した後に表の変更および外部キーの追加を行うと、エラー2213を伴って失敗するという問題は修正されました。(Oracle Bug#6774885)
6.3 リリース7.0.3.3.0からリリース7.0.3.4.0での変更点
- ビューを問い合せる際、SELECT文でORDER BY句を指定すると、ビューの列名が失われるという問題は修正されました。(Oracle Bug#6650839)
- 以前のリリースでは、外部結合演算子(+)を使用する内部表として導出表が指定されているにもかかわらず、外部結合指定が無効になるように、この導出表のいくつかの列にこの演算子が指定されていないと、アサーションが発生する場合がありました。この問題は修正されました。(Oracle Bug#6667195)
6.4 リリース7.0.3.2.0からリリース7.0.3.3.0での変更点
- SQLパラメータ値の最大長の指定が変更されたため、ODBC関数のSQLDescribeParam、SQLExecuteおよびSQLExecDirectの動作が次のように変更されました。
SQLDescribeParamでは、以前はSQL_CHAR型、SQL_WCHAR型またはSQL_BINARY型をとるとレポートされていたパラメータが、それぞれSQL_VARCHAR型、SQL_WVARCHAR型またはSQL_VARBINARY型をとると示されるようになりました。この変更は、SQL INSERT文のVALUES句、またはSQL UPDATE文のSET句に使用するパラメータのように、値がデータベースに直接格納されるパラメータには適用されません。
SQLExecuteおよびSQLExecDirectでは、SQLDescribeParamによってレポートされる最大長より大きいパラメータ値を使用できます。たとえば、CHAR(10)型の列c1を持つ表t1で、次の問合せを実行します。
SELECT * FROM t1 WHERE c1 = :a
パラメータ:a
には、10文字より大きい値を使用できます。この変更は、SQL INSERT文のVALUES句、またはSQL UPDATE文のSET句に使用するパラメータのように、値がデータベースに直接格納されるパラメータには適用されません。(Oracle Bug#6658453)
6.5 リリース7.0.3.1.0からリリース7.0.3.2.0での変更点
- TimesTenリリース7.0の以前のリリースでは、グループ化を行う列に対しGROUP BY句がネストされたSELECT問合せを実行すると、誤った結果が戻される場合がありました。この問題は修正されました。(Oracle Bug#6609276)
6.6 リリース7.0.3.0.0からリリース7.0.3.1.0での変更点
- SQLパラメータの最大長が小さすぎる値に計算され、誤ってString data right truncationエラーになる場合があるという問題は修正されました。(Oracle Bug#5840457)
- 以前のリリースでは、Timestenで外部キー違反がレプリケートされ、アサーションが発生する場合がありました。この問題は修正されました。(Oracle Bug#6415652)
- スタンバイへのフェイルオーバー後も、アクティブ/スタンバイ・ペアのアクティブ・ノードがデータを送信し続ける場合があるというレプリケーションの問題は修正されました。(Oracle Bug#6442293)
- 以前のリリースでは、デーモン・メッセージがsyslogにルーティングされると、TimesTen Serverは起動せずコア・ダンプが発生する場合がありました。この問題は修正されました。(Oracle Bug#6446471および#6512391)
- トランザクション・ログ・レコードの大きなバックログを読み込む際に、XLAリーダーが著しく遅くなる問題は修正されました。
この修正により、このバックログは高速に処理されるようになりますが、XLAを使用する場合は、READLSNHIGHとPURGELSNHIGHの差異が大きくならないように、コミットまたはロールバックによってすべてのトランザクションをタイムリに完了させる必要があります。再起動時にレコードがリーダー・アプリケーションに戻されるには、XLAリーダーが最も古い未確認トランザクション(PURGELSNHIGHとPURGELSNLOWで示される)の先頭から、最も新しいXLA確認トランザクション(READLSNHIGHおよびREADLSNLOW)までを読み取る必要があります。長時間実行中または長時間休止中のトランザクションが存在すると、この時間が非常に長くなり、再起動中にXLAで多数のログ・レコードの処理が必要になります。(Oracle Bug#6459488)
- コミットされていない行の索引値のUPDATEと、子表の挿入の外部キーCONSTRAINT検証を同時に実行するとデッドロックが発生する場合がある問題は修正されました。(Oracle Bug#640006)
- 以前のリリースでは、単一CPUのマシンでTimesTenを実行した場合、SELECT ... FOR UPDATE操作では、同じ行に同時にアクセスする複数のトランザクションからの保護が保証されませんでした。(Oracle Bug#6488388)
- リリース7.0.3.0.0では、6.0のクライアントは、7.0.3.0.0のTimesTen Serverに接続できませんでした。リリースをまたぐTimesTenクライアント/サーバー接続は、ttendaemon.optionsファイルに
-insecure-backwards-compat
オプションが設定されていれば、6.0.xリリースと7.0.3.1.0以上のリリース間で双方向に接続できるようになりました。(Oracle Bug#6528619) - UPDATE文で、主キー列にNULL値が割り当てられるとアサーションが発生する場合がある問題は修正されました。(Oracle Bug#6598439)
6.7 リリース7.0.2.5.0からリリース7.0.3.0.0での変更点
6.7.1 サポートされているSQLの拡張機能
次に示す拡張機能およびその構文の詳細は、『Oracle TimesTen In-Memory Database SQLリファレンス・ガイド』を参照してください。
- このリリースでは、SELECT FOR UPDATE構文は、副問合せを使用できるように拡張されています。
- TimesTenでは、CREATE TABLE AS SELECT文がサポートされています。
- このリリースでは、以前にサポートされなかった複数のSQL関数がサポートされています。新しくサポートされた関数は、次のとおりです。
- 表の変更による主キー制約の追加がサポートされています。
- COMMITおよびROLLBACK SQL文がサポートされています。
6.7.2 このリリースでのその他の新機能
- 次に示すプラットフォームに、TimesTenのサポートが追加されました。
Intel IA-32、EM64TおよびAMD64 CPU用のAsianux 2.0(32-bitおよび64-bit)。
Intel IA-32、EM64TおよびAMD64 CPU用のOracle Enterprise Linux 4および5(32-bitおよび64-bit)。
Intel IA-32、EM64T、AMD64およびItanium 2 CPU用のRed Hat Enterprise Linux 5(32-bitおよび64-bit)。
PA-RISCおよびItanium 2 CPU用のHP-UX 11i v3(32-bitおよび64-bit) - IPv6インターネット・プロトコルは、x86およびSPARC CPU用のSolarisプラットフォーム、およびTimesTenがサポートされるすべてのLinuxプラットフォームでサポートされています。
- 時間ベースのエージングは、TT_DATE型またはORA_DATE型の列でサポートされています。
- JDBC PreparedStatement.executeBatchメソッドはSQLRowCountをサポートし、結果行の配列を戻します。
- このリリースには、組込みプロシージャttMonitorHighWaterReset が追加されました。このプロシージャは、システムMONITOR表のPERM_IN_USE_HIGH_WATERフィールドおよびTEMP_IN_USE_HIGH_WATERフィールドの値を、それぞれPERM_IN_USE_SIZEおよびTEMP_IN_USE_SIZEの現行の値に設定します。
- このリリースでは、レプリケーションのホスト名の解決が改良されました。ユーザーは、レプリケーション・スキームを作成する際に、マスター・ストアが各サブスクライバ・ストアへのアウトバウンド接続で使用するネットワーク・インタフェースを決定できるようになりました。
- ユーザーは、SQL構文を使用して、レプリケーション・スキームにある競合レポートを停止および再開できるようになりました。
- クライアント/サーバー環境では、複数のTimesTen接続をサポートするように子サーバーが変更されています。以前のリリースでは、子サーバーは1つのTimesTen接続のみをサポートしていました。ユーザーは、TimesTenデーモン・オプションまたはTimesTenデータ・ストア属性を使用して、子サーバーごとに接続の数を構成できます。
- キャッシュ・グループに対してパラレルLOADがサポートされたため、キャッシュ・グループのロード中のパフォーマンスが向上しました。この機能は、LOAD CACHE GROUP文で構成できます。
- このリリースには、キャッシュ・グループAUTOREFRESHの進捗を監視する新しいツールが含まれています。新しい組込みプロシージャttCacheAutorefreshStatsGetは、最新の累積AUTOREFRESH情報を戻します。また、AUTOREFRESH情報を戻すようにttTraceMonユーティリティを構成することもできます。さらに、このリリースには、現行のブックマーク情報を戻すSQLスクリプトが含まれています。
- 一時データ・ストアのロギング・プロトコルは、永続データ・ストアに必要なすべての情報(REDO情報を含む)ではなく、UNDO情報のみを含むように変更されました。その結果、このリリースでは、一時データ・ストアのパフォーマンスが向上しています。
- このリリースでは、NFSマウント・システム上のデータ・アクセスは、x86システムのLinuxクライアント(32-bitおよび64-bit)用にサポートされています。
- ユーザーまたはアプリケーションが重複する索引を表に作成しようとすると、警告が戻されます。
- TTClassesメソッドが動作可能な表では、使用可能な列の最大値が1000に増えました。
- TimesTenでは、レプリケーション・スキームがアクティブ/スタンバイ・ペアでない場合、RETURN TWOSAFEサービスを使用するレプリケーション・スキームでAWTキャッシュ・グループは作成できなくなりました。
6.7.3 このリリースでの不具合の修正
- 「sbLogFilesRemove: log file ... does not exist」というエラー・メッセージは、ユーザー・エラー・ログでは表示されなくなりました。(Oracle Bug#5041271)
- ttIsqlCSユーティリティは、7.0.3.0.0以上のTimesTenクライアントがリリース6.0.xのTimesTenサーバーに接続している構成で動作します。(Oracle Bug#5714405)
-dateMode
オプションおよびDATEMODEファイル属性は、ttBulkCpユーティリティでサポートされています。ユーザーは、これらの機能を使用して、Oracle DATE型の列値に日付コンポーネントに加えて時間コンポーネントを含めるかどうかを決定できます。(Oracle Bug#5867897) - 一意の索引および重複する値を使用すると、TimesTenがアサーションを発生させるという問題は修正されました。(Oracle Bug#6062188および#6113795)
- ttSizeユーティリティは、合計の列サイズのうち、VARCHAR列およびBINARY列が使用する割合を示す
-frac
オプションをサポートしています。TimesTenでは、見積もったサイズをオーバーフローすると警告を戻します。(Oracle Bug#6117073) - ttHostNameGet組込みプロシージャが不正確な結果を戻すという問題は修正されました。(Oracle Bug#6128015)
- ttMigrateユーティリティが、128を超える列を含む表をリストアする際に、パフォーマンスが低下するという問題は修正されました。(Oracle Bug#6140876)
- AWTキャッシュ・グループは、TWOSAFEレプリケーション・スキームでサポートされなくなりました。 詳細は、このリリース・ノートの「7. 既知の問題および制限事項」の「7.5 レプリケーション(TimesTenからTimesTenへ)」を参照してください。(Oracle Bug#6176733)
- Windowsシステムで、クライアント/サーバーのキャラクタ・セットの不一致によって無効なキャラクタが戻されるという問題は修正されました。 この問題は、TimesTenのClientのみのインストールでJavaを使用すると発生します。(Oracle Bug#6264409および#6270354)
- このリリースでは、アイドル状態のデータ・ストアに対するチェックポイントのCPU使用率が削減されるように変更されています。(Oracle Bug#6272641)
- Oracleがオフラインの場合に、アクティブ/スタンバイ・レプリケーション構成でAWTキャッシュ・グループに行を挿入する際にエージングが失敗するという問題は修正されました。(Oracle Bug#6313470)
sbLogBufLFNLBNToFrameno
関数のオーバーフローによってアサーションが発生するという問題は修正されました。(Oracle Bug#6336930) - 複数の重複する値を含むTツリー・スキャンを使用して問合せを実行する際に、TimesTenが一貫性のない結果を戻す問題は修正されました。(Oracle Bug#6337679)
- 以前のリリースでは、フェイルオーバーおよびリカバリの後、TimesTenで更新を行っても、Oracleには反映されませんでした。この問題は、AWTキャッシュ・グループを含むアクティブ/スタンバイ・レプリケーション構成で発生していました。この問題は修正されました。(Oracle Bug#6364759および#6364743)
6.8 リリース7.0.2.4.0からリリース7.0.2.5.0での変更点
- 1000列を含む表を作成するとクラッシュするという問題は修正されました。(Oracle Bug#6140446)
- ttSchemaユーティリティでは、自動リフレッシュがONの状態ではCREATE CACHE GROUP文が出力されなくなりました。自動リフレッシュがONの状態はSQLコメントに保存されます。ttSizeには、合計の列サイズのうち、VARCHARおよびBINARYが使用する割合を示す-fracオプションが含まれます。また、見積もったサイズをオーバーフローすると警告が出力されます。(Oracle Bug#6152718)
- 以前のリリースでは、単純な導出表(集計を含まない)の列で外部結合演算子(+)が指定され、パーサーがこの表をフラット化して最適化することを決定した場合、外部結合演算子は削除され、導出表との結合は内部結合として処理されました。この問題は修正されました。(Oracle Bug#6262983)
6.9 リリース7.0.2.3.0からリリース7.0.2.4.0での変更点
- このリリースでは、JDBCのパフォーマンスが向上しました。(Oracle Bug#6041957)
- このリリースでは、ttSchemaユーティリティで、自動リフレッシュがONの状態ではCREATE CACHE GROUP文が出力されなくなりました。キャッシュ・グループは、自動リフレッシュのデフォルトの状態で作成されます。自動リフレッシュがONの状態はSQLコメントに保存されます。(Oracle Bug#6057939)
- JMS/XLAでコア・ダンプが発生するという問題は修正されました。(Oracle Bug#6111821)
- 複数のパーティションに存在するマテリアライズド・ビューを更新する際にコア・ダンプが発生するという問題は修正されました。(Oracle Bug#6130781)
- Windowsでは、複数のアクティブ接続が存在する場合に、TimesTenのメイン・サーバーがスレッド・ハンドルをリークするという問題が修正されました。(Oracle Bug#6143790)
6.10 リリース7.0.2.2.0からリリース7.0.2.3.0での変更点
- 以前のリリースでは、パラメータを使用するREFRESH CACHE GROUP WITH IDまたは透過的ロード操作中に、TimesTenがキャッシュ表で表ロックを取得していました。このリリースでは、TimesTenはこれらの操作中に表ロックを取得しません。(Oracle Bug#6133182)
6.11 リリース7.0.2.1.0からリリース7.0.2.2.0での変更点
- アクティブ/スタンバイ・ペアのアクティブ・ストア上に存在する一部のトランザクションが、ロールアウト中はスタンバイ・ストア上に存在しないという問題は修正されました。(Oracle Bug#6041143)
- 以前のリリースでは、TimesTen Cache Connect to Oracleを使用する際に、PassThroughモードでSQL_NUMERICがサポートされませんでした。この問題は修正されました。OracleへのパススルーではSQL_NUMERICがサポートされています。(Oracle Bug#6057504)
- 以前のリリースでは、いくつかの非索引条件が指定されたTツリー索引スキャンを使用して、同時更新によって同じ行を更新しようとすると、アサーションが発生する可能性がありました。この問題は修正されました。(Oracle Bug#6062188)
- 以前のリリースでは、マルチスレッドの64-bit Javaアプリケーションでコア・ダンプが発生するという問題が存在しました。この問題は修正されました。(Oracle Bug#6110160)
- 一意のTツリー索引に重複する値が存在し、アサーションが発生するという問題は修正されました。(Oracle Bug#6113795)
6.12 リリース7.0.2.0.0からリリース7.0.2.1.0での変更点
- Windows 64-bitプラットフォームでは、SetLockMemoryPrivilege OS権限がTimesTenサービスに追加されています。
- TimesTenは、Windows Server 2003 SP1を実行しているWindows 64-bitシステムおよびラージ・ページをサポートするその他のバージョンで、大規模プロセッサのキャッシュ・ページ・エントリをサポートしています。 サポートされているシステムのリストについては、http://msdn.microsoft.comの「GetLargePageMinimum()」を参照してください。
TimesTenでラージ・ページを割り当てるには、次の手順を実行してSetLockMemoryPrivilege OS権限を有効にします。
1. 「コントロール パネル」で、「管理ツール」→「ローカル セキュリティ ポリシー」を選択します。
2. 「ローカル ポリシー」→「ユーザー権利の割り当て」を選択します。
3. 「メモリ内のページのロック」をダブルクリックします。
4. TimesTenサービスが使用するユーザーおよびグループを追加します。
5. マシンを再起動します。
TimesTenがラージ・ページを正常に割り当てると、ttStatusによって「(LARGE PAGES, LOCKED)」が表示されます。
6.13 リリース7.0.1.0.0からリリース7.0.2.0.0での変更点
- ttMigrateユーティリティは、表およびマテリアライズド・ビューのリストア時に統計の更新または見積りをサポートしています。
ttMigrate -r
コマンドでは、オプションとして-updateStats
または-estimateStats
percentRowsコマンドライン・フラグを指定し、これらのタスクを実行できます。 - このリリースでは、
MapMessage.getLong
およびMapMessage.getString
を使用してDATEおよびTIMESTAMPフィールドにアクセスできます。MapMessage.getLongはUNIX epoch(1970年1月1日 00:00:00 UTC)からのマイクロ秒を返すため、MapMessage.getStringより効率的です。ただし、MapMessage.getLongはナノ秒の精度をサポートしていません。TIMESTAMPにナノ秒の精度が必要な場合は、MapMessage.getStringを使用します。 - このリリースのTimesTenは、NFSマウント・システム上では動作しません。このリリースでは、
-allowNetworkFiles
デーモン・オプション(リリース7.0.1.0.0にのみ存在)が無効になりました。 - 以前のリリースでは、2つ以上のリーダーがMessage.acknowledgeという別々のJMSセッションをほぼ同時に使用すると、一方のコールがTimesTenエラー8031で失敗しました。この問題は修正されました。(Oracle DB#5653780)
- 3つのヒープのいずれか1つのみから発生するヒープ割当てのため、レプリケートされたスキーマのパッシブ・サブスクライバ・データ・ストア上で断片化が発生するという問題は修正されました。(Oracle Bug#572904)
- 以前のリリースでは、TCP接続が失敗するとttRepSubscriberFailedTrapがスローされました。これによって、TimesTenが接続を再試行するとログが一杯になりました。このリリースでは、SNMPトラップ
ttRepTCPFailedTrap
が追加され、TCP接続が失敗した場合にスローされます。(Oracle Bug#5862800) - このリリースでは、XLAによってオープンされたファイル記述子に対してアプリケーションが誤って操作を実行する問題を回避しようとします。以前は、アプリケーションがXLAによってオープンされたファイル記述子に対するクローズ、読取りまたは検索を実行すると、エラーまたはアサーションが発生していました。現在、XLAはそのような多数のアプリケーション・エラーを検出し、リカバリできるようになりました。この機能は、XLAがアプリケーション・エラーに対してより強固な回復力を持つようになり、また、アプリケーション・プログラマがそのようなエラーを検出して修正できることを目的としています。そのようなエラーをすべてXLAで検出し、リカバリするのは不可能です。そのため、アプリケーション開発者がこれらのエラーを修正することが重要になります。(Oracle Bug#5866888)
- 以前のリリースでは、TTCommand::ExecuteImmediateメソッドにエラーが発生した場合、Dropをコールしないという問題が存在しました。この問題は修正されました。(Oracle Bug#5895768)
- 以前のリリースでは、外部結合でマテリアライズド・ビューのNULL値の列が更新されないという問題が存在しました。この問題は修正されました。(Oracle Bug#5908860)
- このリリースでは、SQLでコンパイルされたコマンド・キャッシュが改良されました。(Oracle Bug#5899760)
- ハッシュ・バケットの数が32から129に増えました。
- ハッシュ・アルゴリズムが改良されました。
- このリリースには、新しい組込みプロシージャ
ttSqlCmdCacheInfoGet
が含まれています。この組込みプロシージャはパラメータをとらず、次の結果セットを返します。
cmdCount
: キャッシュ内のコマンドの数。
freeableCount
: 実行時にサブデーモンによってガベージ・コレクトされる解放可能なコマンドの数。
size
: キャッシュされたすべてのコマンドを格納するように割り当てられた現在の合計領域。
- 行を指定しなかった場合、ttSizeユーティリティがエラー「value for -rows must be a number」を返すという問題は修正されました。(Oracle Bug#5898208)
- MontaVista 64-bit Systemで2GBより大きいデータ・ストアを作成できないという問題は修正されました。(Oracle Bug#5909588)
- TimesTen 7.0.1.0.0では、64-bit Windows Systemで稼働している32-bitクライアント・アプリケーションはTimesTen Serverに接続できませんでした。この問題は修正されました。(Oracle Bug#5916382)
- 異なるリリースのTimesTenデータ・ストアを複製しようとした場合に返されるエラー・メッセージは、TimesTenのリリースが一致していないことを示すように改良されました。(Oracle Bug#5937159)
- このリリースでは、高速パス結合計画が改良されました。(Oracle Bug#5941648)
- Linux Systemsでは255を超える値、Solaris Systemsでは269を超える値が含まれるNOT IN句を含む問合せがハングするという問題が修正されました。(Oracle Bug#5954612)
6.14 リリース7.0.0.0.0からリリース7.0.1.0.0での変更点
6.14.1 リリース7.0.1.0.0での新しいアイテム
- 現在、WindowsのTimesTenインストールには、Microsoft Visual C++ 6、7および8で構築されたTTClassesライブラリが含まれています。
- Windowsにインストールした場合、TimesTenのデフォルトのインスタンス名は
tt
release_bitとなります。たとえば、TimesTen 7.0.1.0.0の32-bitインスタンスの名前は、デフォルトでtt70_32となります。デモDSN名にも、現在はビット・レベルが含まれています。たとえば、RunData_tt70_32 やRunData_tt70_64 となります。 - SQL関数LENGTH4、LENGTHB、SUBSTR4、SUBSTRB、INSTR4およびINSTRBが、このリリースでサポートされています。
TransparentLoad
データ・ストア属性が、このリリースで追加されました。 - ResultSet.getCharacterStreamおよびPreparedStatement.setCharacterStreamが、このリリースでサポートされています。
- UNIX Systemsでは、サイレント・バッチ・アンインストールがサポートされています。
- 『Oracle TimesTen In-Memory Databaseアーキテクチャ概要』が『Oracle TimesTen In-Memory Database概要』に変更されました。
- 『Oracle TimesTen In-Memory Database推奨されたプログラミングの実行』は、install_dir/docには含まれなくなりました。このドキュメントについては、Oracle Technical Network Japan(OTN-J)のWebサイトを参照してください。そのサイトでは、TimesTenのリリース間での変更を含め、頻繁に更新が行われています。
- Linuxの大規模ページをサポートするために、
-linuxLargePageAlignment
デーモン・オプションがこのリリースで追加されました。 - デーモンのポートが異なる場合のレプリケーションを許可するために、ttRepAdmin -duplicate操作でオプション
-verbosity
および-remoteDaemonPort
が使用可能になりました。 - ttRepAdmin
-duplicate
操作で、オプション-recoveringNode
および-deferCacheUpdate
が使用可能になりました。これらのオプションによって、Oracle Databaseが使用できない場合に、キャッシュ・グループを含むデータ・ストアの複製が容易になります。 - 現在、CkptLogVolume データ・ストア属性のデフォルト値は0です。
- SQLGetStmtOption ODBC関数に、TimesTen TT_STMT_PASSTHROUGH_TYPEオプションが追加されました。このオプションを使用すると、準備された特定の文が、Cache Connect to Oracleのパススルー機能によってOracleにパススルーされるかどうかを判断できます。 『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』(C_dev.pdf)を参照してください。
- JMS/XLA構成ファイルの場所を、ユーザーが指定できるようになりました。
- 『Oracle TimesTen In-Memory Database Java開発者およびリファレンス・ガイド』(java_dev.pdf)を参照してください。
- SPARCおよびx86 CPUのSolaris 64-bit Systemsで動作するTimesTenで、JRockitがサポートされています。
6.14.2 リリース7.0.1.0.0での不具合の修正
- 以前のリリースでは、キャッシュ・グループの作成後にコミットを実行しなかった場合、キャッシュ・グループにOracleデータを透過的にロードしようとすると、アサーションが発生していました。このリリースでは、操作はエラーを戻して正常に終了します。(Oracle Bug#5620835)
- WHERE句にCHAR列が指定されている場合、SELECT操作中にキャッシュ・グループにOracleデータを透過的にロードすると失敗するという問題は修正されました。(Oracle Bug#5620947)
- SELECTリストに空の文字列があった場合、キャッシュ・グループに対するSQL操作でOracleへのパススルーを実行できないという問題は修正されました。(Oracle Bug#5636129)
- このリリースでは、
ttMigrate
ユーティリティでシーケンス・キャッシュ値を適切に移行できるようになりました。(Oracle Bug#5659154)
6.15 リリース6.0.7からリリース7.0.0.0.0での変更点
TimesTenリリース7.0.0.0.0以降、製品のバージョン番号は、次のように5桁の数値で表されます。
TimesTen製品のバージョン = Major.Minor.Patch.Dot4.Dot5
- Major : メジャー・リリース・バージョンを示します。リリースには、製品のインフラストラクチャと機能の両方の変更が含まれます。
- Minor : マイナー・リリース・バージョンを示します。インフラストラクチャに大きな変更はありませんが、製品に重要な新機能が追加されています。
- Patch : メンテナンス・リリースを示します。前回のメンテナンス・リリースの後に行われたすべての不具合の修正が含まれています。
- Dot4 : 予定されている次のパッチ・リリースまで待つことができない不具合の修正リリースのバージョンを示します。
- Dot5 : 特殊なケースで使用します。
6.15.1 リリース7.0.0.0.0での新機能
- Oracle TimesTenでは、次のデータ型のOracleセマンティクスをサポートしています。
- CHAR
- NCHAR
- VARCHAR2
- NVARCHAR2
- BINARY_FLOAT
- BINARY_DOUBLE
- NUMBER
- DATE
- TIMESTAMP
アプリケーションをOracle TimesTenの以前のバージョンからアップグレードする場合は、新しいデータ・ストア作成属性TypeMode =1を使用する必要があります。これによって、下位互換性モードが有効になり、このリリースの新しいOracleデータ型セマンティクスではなく、以前リリースされていたTimesTenデータ型のセマンティクスが提供されます。TypeMode は、デフォルトで0(Oracleデータ型セマンティクス)に設定されています。Cache Connect機能を使用するときは、TypeMode を0に設定する必要があります。
- Oracle TimesTenでは、グローバリゼーション・サポートを提供しています。この機能には、次のものが含まれます。
- CHAR/VARCHAR2列での非ASCIIデータの格納および操作
- すべての文字データ型のロケール固有コレクション
- 言語ソートおよび言語索引
- キャラクタ・セットのサポート
データ・ストアは、特定のデータベース・キャラクタ・セットを使用して作成する必要があります。データ・ストアと接続では、異なるキャラクタ・セットを指定できます。TimesTenでは、データベース・キャラクタ・セットと接続キャラクタ・セット間の変換が処理されます。
- このリリースのTimesTenでは、変更されたOracle HRスキーマが提供されています。このスキーマは、『Oracle TimesTen In-Memory Database SQLリファレンス・ガイド』のいくつかの例で使用されています。
- このリリースでは、自動データ・エージングの2つのフォームが導入されました。これらのフォームは、キャッシュ・グループ内の表およびキャッシュ・グループ外の表で使用可能です。エージングのフォームには、使用状況ベース(最近の使用状況)のものと、時間ベースのものがあります。アプリケーションで時間ベースのエージングを使用すると、Oracle TimesTenでデータのスライド・ウィンドウをキャッシュできます。
6.15.2 SQLの拡張機能
サポートされているSQL文の拡張機能
- ON DELETE CASCADE句がサポートされています。参照キー値を含む行が親表から削除されると、依存する外部キー値を持つ子表の行も削除されます。
- UNIQUE HASH ON ... PAGES=オプションがCREATE TABLE文から省略されると、主キーにTツリー索引が作成されます。
- 1より大きいレベルの行の値コンストラクタがサポートされます。
- HAVING句では副問合せがサポートされます。
- 条件の右側のオペランドに副問合せが指定されていないかぎり、左側のオペランドで副問合せを指定できます。(右側のオペランドでは、引き続き副問合せを指定できます。右側のオペランドに副問合せが指定されている場合、左側のオペランドには副問合せを指定できません。)
- GROUP BY句では式がサポートされます。
- SELECT FOR UPDATEによって、更新時にロックする必要がある表の指定が許可されます。
- 問合せに外部結合演算子(+)を指定すると、その問合せに副問合せを指定できます。
- MINUSおよびINTERSECT集合演算子がサポートされます。
- 集合演算子(UNION、MINUS、INTERSECT)をビュー定義に指定できます。
- 主キーを同じ値に更新できます。
- エントリを1つのみ持つIN条件の値リストにカッコは不要です。
- ROWNUM擬似列がサポートされます。
- FIRST NおよびN TO M句にパラメータを指定できます。
- 表は最大1000列を含むことができます。
- SQL問合せのパフォーマンスが向上しました。
新しいSQL文
- 1つ以上のソースから行を選択し、更新またはターゲット表に挿入するには、MERGE文を使用します。
- NLS_SORT、NLS_LENGTH_SEMANTICS、 NLS_NCHAR_CONV_EXCPセッション・パラメータを動的に変更するには、ALTER SESSION文を使用します。
新しいSQL関数
- CHR( n )関数は、データベース・キャラクタ・セットにバイナリ値n を持つ文字を戻します。結果はVARCHAR2データ型です。
- NCHR(n )関数は、Unicode値n を持つ文字を戻します。結果はNVARCHAR2データ型です。
- UNISTR(string )関数は、文字列をNVARCHAR2データ型に解決します。
- ASCIISTR(string )関数は、文字列をASCII文字に解決します。非ASCII文字はUnicodeのエスケープに変換されます。
- COALESCE関数は、式リストの最初の非NULL式を戻します。
- DECODE関数は、式と各検索値を1つずつ比較します。
- TO_NUMBER関数は、文字列、BINARY FLOATまたはBINARY DOUBLEデータ型を数値データ型に変換します。
- TRUNC ( expression )関数は、指定した桁数に切り捨てられた数値を戻します。
- TRUNC ( date )関数は、書式モデルで指定された単位に切り捨てられた時刻とともに日付を戻します。
- NLSSORT関数は、指定した文字列のソート・キー値を戻します。
これらのSQL操作の詳細は、『Oracle TimesTen In-Memory Database SQLリファレンス・ガイド』(sql.pdf)を参照してください。
6.15.3 XLAおよびJMS/XLAの拡張機能
- 表へのXLAサブスクリプションは、ブックマーク・レベルで行うことができます。7.0より前のリリースと異なり、XLAサブスクリプションはすべてのブックマークに適用されるわけではありません。
- XLAでは、特定の変更更新レコードについて表および列のバージョン情報を取得できます。また、表定義と変更更新レコードの互換性を確認することもできます。
- JMS/XLA APIを使用すると、ソース・データ・ストアからターゲット・データ・ストアに更新をレプリケートできます。
6.15.4 クライアント/サーバーの拡張機能
- 6.0のクライアントが7.0のデータ・ストアに、また7.0のクライアントが6.0のデータ・ストアに接続できます。6.0のクライアントが7.0のデータ・ストアに接続するには、
-insecure-backwards-compat
デーモン・オプションを使用します。詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』(operations.pdf)を参照してください。 - メインのTimesTenサーバー・プロセスを停止する前に子サーバー・プロセスを停止するには、ttDaemonAdmin ユーティリティの
-stopserver
オプションに-force
オプションを指定して使用します。
6.15.5 Cache Connect to Oracleの拡張機能
- キャッシュ・グループには、使用状況ベース(最近の使用状況)のエージングと、時間ベースのエージングを構成できます。
- SELECT問合せでキャッシュ・グループ表のデータを検出できない場合に、Oracle表からキャッシュ・グループ表に自動的にデータをロードするようにOracle TimesTenを構成できます。『Oracle TimesTen Cache Connect to Oracle開発者および管理者ガイド』(cacheconnect.pdf)を参照してください。
6.15.6 レプリケーションの拡張機能
- 7.0と7.0より前のデータ・ストアの間でレプリケーションを行う場合は、
-insecure-backwards-compat
デーモン・オプションを使用して、これらのデータ・ストアに接続します。詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』(operations.pdf)を参照してください。 - 読取り専用のサブスクライバを持つアクティブなスタンバイ・ペアは、Cache Connect to Oracleで使用できるようになりました。この構成では、AUTOREFRESHキャッシュ・グループ属性が指定された読取り専用のキャッシュ・グループおよびASYNCHRONOUS WRITETHROUGHキャッシュ・グループがサポートされます。この構成の主なメリットは、マスターからスタンバイへのフェイルオーバー時に、スタンバイ・データ・ストアでの完全自動リフレッシュが不要になったことです。
- レプリケーション・マスターは、最大128のサブスクライバを保持できます。
- レプリケーション競合レポートは、XML形式で生成されます。『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』(replication.pdf)を参照してください。
6.15.7 ユーティリティの拡張機能
- ttAdoptStores ユーティリティが新しく追加されました。UNIX Systemsでは、このユーティリティによって、TimesTenインスタンスから同じマイナー・バージョンの新しいTimesTenインスタンスにデータ・ストアが移動されます。
- ttIsql ユーティリティに新機能が追加されました。属性の設定と表示、およびコマンド履歴の保存が可能です。
6.15.8 組込みプロシージャの拡張機能
- ttConfiguration 組込みプロシージャを使用すると、データ・ストアのODBC属性を問い合せることができます。
- ttLockWait 組込みプロシージャを使用すると、100ミリ秒の粒度でロック待機値を指定できます。
- ttOptShowJoinOrder組込みプロシージャを使用すると、オプティマイザの結合順序を表示できます。
6.15.9 新しい組込みプロシージャ
- ttAgingLRUConfig : 使用状況ベースのエージングを使用して定義された表に対する最近の使用状況(LRU)エージング・ポリシーを設定および表示します。
- ttAgingScheduleNow : エージング・プロセスを即時に開始するか、外部スケジューラで使用された場合は希望の時刻に開始します。
- ttCachePolicyGet : 接続されているデータ・ストアのTimesTenキャッシュ・エージェントをいつ実行するかを判断するためのポリシーを戻します。
- ttCachePolicySet : 接続されているデータ・ストアのTimesTenキャッシュ・エージェントをいつ実行するかを判断するためのポリシーを定義します。
- ttConfiguration : 現行の接続におけるほとんどのODBC接続属性の値を戻します。
- ttHostNameGet : レプリケーションによって使用されるローカル・ホストの名前を戻します。
- ttHostNameSet : レプリケーションによって使用される現行のデータ・ストアのローカル・ホストの名前を設定します。非標準的なネットワーク構成で役に立ちます。
- ttOptGetMaxCmdFreeListCnt : SQLでコンパイルされたコマンド・キャッシュのサイズを戻します。
- ttOptSetMaxCmdFreeListCnt : SQLでコンパイルされたコマンド・キャッシュのサイズを設定します。
- ttOptSetMaxPriCmdFreeListCnt : マテリアライズド・ビューを保持するコマンドに対し、SQLでコンパイルされたコマンド・キャッシュのサイズを設定します。
- ttRamPolicyGet : データ・ストアがいつシステムのRAMにロードされるかを判断するためのポリシーを戻します。
- ttRamPolicySet : データ・ストアがいつシステムのRAMにロードされるかを判断するためのポリシーを設定します。
- ttRepPolicyGet : データ・ストアがいつシステムのRAMにロードされるかを判断するためのポリシーを戻します。
- ttRepPolicySet : 接続されているデータ・ストアのTimesTenレプリケーション・エージェントをいつ実行するかを判断するためのレプリケーション再起動ポリシーを定義します。
- ttRepTransmitGet : 現行のトランザクションにおけるサブスクライバへの更新の送信ステータスを戻します。
- ttRepTransmitSet : この組込みプロシージャを実行した接続に対する後続の更新を、任意のサブスクライバにレプリケートすることを停止します。
- ttXlaBookmarkCreate : 指定したブックマークを作成します。
- ttXlaBookmarkDelete : 指定したブックマークを削除します。
これらの組込みプロシージャの詳細は、『Oracle TimesTen In-Memory Database APIリファレンス・ガイド』(tt_ref.pdf)を参照してください。
6.15.10 新しい属性
- DatabaseCharacterSet : データ・ストアで使用するキャラクタ・セットを指定します。この属性は、データ・ストアの作成時に必要です。デフォルト値はありません。
- TypeMode : データ・ストアのデータ型モードを指定します。デフォルトは0です。
- ConnectionCharacterSet : 接続のキャラクタ・エンコーディングを指定します。データベース・キャラクタ・セットがTIMESTEN8でないかぎり、デフォルトはUS7ASCIIです。
- NLS_LENGTH_SEMANTICS : デフォルトの長さセマンティクス構成を設定します。デフォルトはBYTEです。
- NLS_NCHAR_CONV_EXCP : NCHAR/NVARCHAR2データとCHAR/VARCHAR2データ間での暗黙的または明示的なキャラクタ・タイプ変換でデータが失われた場合、エラーをレポートするかどうかを判別します。デフォルトは0です。
- NLS_SORT : 言語比較で使用する照合順番を指定します。デフォルトはBINARYです。
これらの属性の詳細は、『Oracle TimesTen In-Memory Database APIリファレンス・ガイド』(tt_ref.pdf)を参照してください。
6.15.11 新しいデーモン・オプション
ttdaemon.options
ファイルで、次の新しいオプションを指定できます。
-supportlog
: デフォルトはdaemonhome/ttmesg.log
です。 -maxsupportlogfiles
: デフォルトは10です。 -maxsupportlogsize
: デフォルトは0x100000です。 -userlog
: デフォルトはdaemonhome/tterrors.log
です。 -maxuserlogfiles
: デフォルトは10です。 -maxuserlogsize
: デフォルトは0x100000です。
6.15.12 その他の拡張機能
- デフォルトのログ・バッファ・サイズは、64MBに増えました。
- TempSize 属性のデフォルトは、6MB以上です。この属性の値は、引き続きPermSize値から導出されます。
- シリアライズ可能分離での同時スキャンが行われないコミット読取り分離モードの場合、同じトランザクションで同じ行に対して行った複数の更新、または同じトランザクションで挿入された行の削除では、次のロックは適用されません。
- ODBCドライバでは、アプリケーションでパススルー文用に提供されているSQLデータ型を使用します。
- オプティマイザで使用する場合、列および行の統計の収集および計算時に行はロックされません。
- BINARY_FLOATおよびBINARY_DOUBLE SQL型では、IEEE浮動小数点値Inf(正の無制限)、-Inf(負の無制限)およびNaN(数値以外)をサポートします。
7. 既知の問題および制限事項
7.1 アクセス制御
- Windows Systemsでは、アクセス制御を有効にしてOracle TimesTenをインストールすると、その後でインストールを変更したり、追加することはできません。たとえば、すでにOracle TimesTen Clientのみがインストールしてある場合に、Oracle TimesTen Data Managerをインストールするには、最初にOracle TimesTenを削除してから、システムにインストールするすべてのコンポーネントを再インストールする必要があります。
7.2 Oracle TimesTenのインストールおよび削除
- HP-UXオペレーティング・システムでVeritasファイル・システムを使用する場合は、TimesTenをインストールする前にオプション
discovered_direct_iosz
およびmax_direct_iosz
を3MBに設定します。詳細は、『Oracle TimesTen In-Memory Database追加情報』を参照してください。 - TimesTenでは、SELinuxがサポートされていません。TimesTenで使用するためにLinuxをインストールする際は、SELinuxオプションが無効になっていることを確認してください。
- Windows 64-bit Systemsでは、TimesTenの32-bitおよび64-bitインスタンスは同じマシンに共存できません。
- データ・ストアに1つ以上のキャッシュ・グループが含まれる場合、TimesTenを7.0.0.0.0以前のリリースから今回のリリースにオンラインでアップグレードすることはできません。キャッシュ・グループを手動で作成し、新しいTimesTenのデータ・ストアにロードする必要があります。
- TimesTen 7.0.x.x.xのベータ版で作成されたDSNは、TimesTen 7.0.1.0.0以上との互換性がありません。今回リリースのTimesTenを使用する前に、これらのDSNを削除する必要があります。
- Cache Connect to Oracleを削除するには、Windows InstallShield WizardでModifyオプションを使用します。
- Windowsでは、Oracle TimesTenを圧縮インストールから削除すると、
timesten
ルート・ディレクトリは削除されます。Oracle TimesTenを通常のインストールから削除すると、timesten
ルート・ディレクトリは残りますが、空になります。 - Linux Systemsでは、8GBを超える構成を持つユーザーは、
kernel.shmmax
の設定に加え、kernel.shmall
パラメータの設定も必要になる場合があります。値の単位はKBで、ceil(SHMMAX/PAGE_SIZE)
と同じにする必要があります。通常、ページ・サイズは、x86では4K、Itanium Systemsでは16Kです。
たとえば、Itaniumに64GBのデータ・ストアがある場合、kernel.shmmax=68719476736
のみでなく、kernel.shmall=4194304
も必要です。 - Oracle TimesTenを再インストールすると、既存の
sys.odbc.ini
およびsys.ttconnect.ini
ファイルは、オプションでsys.odbc.ini.old
およびsys.ttconnect.ini.old
ファイルとして保存され、新しいデモ・ファイルがインストールされます。この場合、再インストール後に、定義されている可能性がある追加のDSNを手動でマージする必要があります。 - 新しいRedHat Linux SystemにOracle TimesTenをインストールしようとしても、32-bitアプリケーションがサポートされていないことがあります。 Redhat Enterprise Linuxのインストレーション・ガイドでは、32-bitアプリケーションを開発または実行するAMD64、Intel EM64TおよびItaniumシステムのユーザーは、Compatibility Arch SupportパッケージおよびCompatibility Arch Development Supportパッケージを選択して、アーキテクチャ固有のサポートをシステムにインストールすることが推奨されています。
7.3 TTClasses
- TTClassesは、64-bit Linuxでのgcc 3.0をサポートしていません。これは、64-bit Linux/IA-64のgcc 3.0で最適化されたビルド(-O)には、同じプラットフォームで同じコンパイラを使用したデバッグ・ビルトと比較すると、異なる(不適切な)ランタイム動作(例外のスローとキャッチに関連する)があるためです。64-bit LinuxでTTClassesをコンパイルする場合は、gcc 3.2またはgcc 3.4を使用します。
- TTClassesでの問題によって、NCHAR / NVARCHAR2パラメータおよび列が不正確にバウンドされます。この結果、パラメータおよび列のデータが、NULL終了文字なしでデータベースとの間で転送されます。
7.4 Cache Connect to Oracle
- TWO SAFEレプリケートのシナリオにキャッシュ・グループがあると、次のシナリオでトランザクションが失敗する場合があります。
- トランザクションがTWO SAFEレプリケーションのトランザクションである場合。
- レプリケートされるトランザクションに、ALTER TABLE文またはALTER CACHE GROUP文がある場合。
- トランザクションに、レプリケート表に対するINSERT文、UPDATE文またはDELETE文があり、レプリケートされるキャッシュ・グループまたはAWTキャッシュ・グループと、1つ以上のキャッシュ・グループがレプリケートされる場合。
- Cache Connectを使用していて、TimesTenノードからOracleサーバーが(ネットワーク障害などが原因で)接続できなくなった場合、TimesTenプロセスは無期限に待機する場合があります。 対処として、
$ORACLE_HOME/network/admin/sqlnet.ora
で、SQLNET.SEND_TIMEOUTおよびSQLNET.RCV_TIMEOUTクライアント・パラメータを設定します。 sqlnet.oraパラメータは、OracleサーバーではなくTimesTenノードにあるクライアント・サイドでのみ更新する必要があります。
たとえば、SQLNET.SEND_TIMEOUTとSQLNET.RCV_TIMEOUTに100秒を設定すると、TimesTenからOracleへのすべての通信コールで、200秒以内にタイムアウトが発生します。 タイムアウトの値は、通常の操作で不要なタイムアウトが発生しないように、十分な大きさに設定する必要があります。 - TimesTenの内部テストでは、TimesTenキャッシュ・エージェントがクラッシュしたり、TimesTen Cache Connectを使用するマルチスレッド・アプリケーションがクラッシュするというOracle OCIに関する2つの不具合がわかっています。この不具合の識別と確認は済んでいます。この問題は、Oracleクライアント10.2.0.1以上のバージョンで発生します。修正版はまだリリースされていません。(Oracle Bug#6674731)
- AWTキャッシュ・グループを使用するアクティブ/スタンバイ・スキームでは、アクティブ/スタンバイ・ノードのネットワークがOracle Serverから切り離されると、TimesTenノードでは、新しい接続の受入れを停止します。
この問題が発生した場合は、次の手順で対処します。
- レプリケーション・エージェント・プロセスを強制終了(
kill -9
)します。 ttAdmin -cacheStop
master1コマンドまたはttCacheStop組込みプロシージャ(適切なタイムアウトを指定)を使用して、キャッシュ・エージェントを停止します。デフォルトのタイムアウトは100秒です。 ttAdmin -cacheStart
master1コマンド
を使用して、キャッシュ・エージェントを再起動します。
- BINARY_DOUBLE型またはBINARY_FLOAT型をOracle Serverからキャッシュするときに、Oracle 10g リリース2以上のOCIクライアントを使用する必要があります。
- 大規模キャッシュ・グループがフラッシュされ、フラッシュ中にOracleへの接続が失われた場合、アサーション障害が発生します。アサーション障害は、フラッシュ操作で10MBを超えるデータをフラッシュした場合にのみ発生します。
- Solaris X86プラットフォーム(64-bit)用のリリース10.2.0.1.0のOracleクライアントで、SQL*Netトレースをレベル16に設定すると、Cache Connectアプリケーションは、OCIServerAttachコール中にコア・ダンプを作成して失敗します。これは、Oracle Bug#6407026で報告されているOCI問題によるものです。
- Passthrough=3で1つ以上のフィールドをバインドする際に、パススルー文でsetTimestampをコールすると、セッションNLS_TIMESTAMP_FORMATが失われます。 この問題の回避策として、TO_TIMESTAMP(?, 'syyyy-mm-dd hh24:mi:ss.ff9')およびTO_DATE(?,'syyyy-mm-dd hh24:mi:ss')を使用するようにSQL文を変更します。
- UNIXでCache Connect to Oracleオプションを使用するには、
$ORACLE_HOME/lib32
または$ORACLE_HOME/lib
(またはその両方)のOracleライブラリが、TimesTenを実行しているユーザーによって読取り可能であることを確認します。 - 64-bit Windows SystemでCache Connect to Oracleオプションを使用するときに、32-bit TimesTenを使用する場合は、32-bit Oracleクライアントをインストールする必要があります。
- Cache Administratorでのキャッシュ・グループの作成または変更時、選択したルート表にTIMESTAMP列が含まれることを検証する場合のみ、時間ベースのエージング・オプションが有効になります。この検証には、予想より時間がかかる場合があります。選択したルート表にTIMESTAMP列が含まれており、時間ベースのエージング・オプションが有効でない場合は、オプションが有効になるまで待ってください。
- AUTOREFRESHキャッシュ・グループが含まれるTimesTenの障害ノードを複製処理によってリカバリする場合、かつOracle Databaseが使用可能でない場合は、さらにTimesTenのノード障害があり、Oracle Databaseで接続の問題が断続的に発生していると、完全自動リフレッシュが行われる可能性があります。
- キャッシュ・グループには、参照先のない行(対応する親行のない行)を含めるべきではありません。参照先のない行は、手動リフレッシュまたは自動リフレッシュによって、失効したり、適切にリフレッシュされない可能性があります。それらの行は、アンロードまたはエージング操作では削除されません。また、OracleでFLUSH文を実行しても更新されません。
- バージョンが異なるOracleクライアントおよびサーバーを実行すると、キャッシュ・エージェントでコア・ファイルがクラッシュする可能性があります。これは、Oracleクライアントの不具合が原因です。Metalink Note 342791.1またはBug#4499298を参照してください。この不具合は、Oracle Database 10g R2 10.2.0.1.0、Oracle Database 10g R1 10.1.0.5.0およびOracle9i 9.2.0.8.0で修正されています。この修正は、クライアントとサーバーの両方に影響するため、両方に修正を適用する必要があります。
- RACで使用するためにCache Connect to Oracleを構成する場合は、次のいずれかのリリースのOracleクライアントを使用します。
- Cache Administratorの使用時に、キャッシュ・グループを作成するとエラーが発生する場合は、生成された警告がエラーとともに表示されます。ただし、警告のみが生成される場合、それらの警告は表示されません。
- 自動リフレッシュ・キャッシュ・グループ表に、名前がOracleのキーワード(TIMESTAMPなど)であるキー列が含まれている場合は、CREATE CACHE GROUP SQL文から次のエラーが送信される場合があります。
- ORA-06553: PLS-320: この式の型の宣言が不完全か、または形式が誤っています。 rc = -1
- キー列の名前にOracleのキーワードを使用しないでください。
- Cache Administratorを使用している場合、「Cannot find server or DNS Error」エラーが発生する操作があります。
- パススルー・レベルを1または2に設定したユーザー・アプリケーションは、Oracle TimesTen SQLが拡張されたために、Oracle TimesTen 7.0.0.0.0では動作が異なります。一部の文は、構文エラーが発生することがなくなり、OracleのかわりにOracle TimesTenで実行されます。
- Cache Connect to Oralsオプションを使用している場合、JDBCメソッドPreparedStatement.setAsciiStream、PreparedStatement.setUnicodeStream、PreparedStatement.setBinaryStream、PreparedStatement.setCharacterStreamは、Oracleパススルー・モード1から3ではサポートされていません。
- Windowsの場合、Oracleディレクトリ・サーバーを使用すると、キャッシュ・エージェントがOracleライブラリ
orantcp9.dll
にアクセス違反を検出する場合があります。これは、Oracleの既知の問題です(Oracle MetaLinkのDoc ID Note:234794.1を参照)。この問題が発生した場合、「0xc0000005 (access violation) in ORANTCP9.dll
」または「0x80010105 (unknown exception) in KERNEL32.dll.
」のエラーが表示されます。この問題を回避するには、ディレクトリ・サーバーのかわりに、Oracleのtnsnames.ora
を使用します。
7.5 レプリケーション(TimesTenからTimesTenへ)
- AWTキャッシュ・グループを使用して構成されたアクティブ/スタンバイ設定では、アクティブ/スタンバイ・ノードのネットワークがOracle Serverから切り離されると、TimesTenノードでは、新しい接続の受入れを停止します。 この場合は、マスターでレプリケーション・エージェントを停止してから再起動する必要があります。たとえば、次のようになります。
- kill -9 replication_agent_process
- ttCacheAdmin -stop master1
- ttCacheAdmin -start master1
- TWOSAFEトランザクションには、特殊なログ・レコードを含む特殊なトランザクション処理が含まれます。このため、TWOSAFEレプリケーションは、2つのストア構成のみをサポートするように設計されています。1つ以上のAWTキャッシュ・グループを持つTWOSAFEレプリケーションはサポートされていません。
- TimesTen Cache Connectリリース6.0.2の不具合のため、リリース6.0.2とTimesTenの他のリリース間でキャッシュ・グループをレプリケートできません。このため、キャッシュ・グループに対するオンライン・アップグレードは、TimesTenの6.0.2と他のリリース間では機能しません。
- ttMigrate は、ローカル・データ・ストアに存在しない表のレプリケーション要素を定義するレプリケーション・スキームをサポートしません。
- 非常にまれな状況下で、レプリケートされるディテール表と、それに対応するマテリアライズド・ビューのペアが分岐することがあります。この分岐が発生するのは、マテリアライズド・ビューが次の両方の条件を満たしている場合のみです。
- ビュー定義に、2つ以上の条件がある。
- 条件のいずれかに、数値オーバーフロー、0(ゼロ)による除算、文字列の切捨てなど、例外を生成する可能性がある式が含まれている。
2つのデータ・ストアでの条件評価の順序に違いがあると、1つの条件が評価された後、受信側のデータ・ストアでのみ例外が生成される場合、ディテール表に対する更新のレプリケートによって、分岐が発生する可能性があります。この結果、受信側のデータ・ストアは更新を拒否するため、ディテール表とマテリアライズド・ビューの分岐が発生します。このような分岐を回避するために、ユーザーは、式の評価時に例外を生成する可能性のあるマテリアライズド・ビューをレプリケートしないようにする必要があります。SQL CAST演算子を使用して、算術オーバーフローを回避できる場合があります。
- DATASTORE要素を使用する新しいレプリケーション・スキームを5.1以上で作成した場合、下位方向(5.0、4.5など)には移行できません。リリース5.1より前のOracle TimesTenで作成したDATASTORE要素を含むスキームは、5.1に移行することも、その後で以前のリリースに再び移行することも可能です。
- ttXLAApplyがレプリケーションの実装に使用されている場合、外部キーおよび一意制約を文レベルで検証することはできません。
レプリケーションが効率的に動作するには、peerのホスト名を短時間でIPアドレスに変換できる必要があります。Windowsでこれを効率的に行うには、ネットワーク上のホストに関する正確な情報を持つ有効なWINSサーバーまたは有効なDNSサーバーのいずれかを問い合せるようにWindowsマシンを設定する必要があります。このようなサーバーが存在しない場合は、静的なHOST-to-IPエントリを、
%windir%\system32\drivers\etc\hostsまたは%windir%\system32\drivers\etc\lmhosts
ファイルに入力できます。
これらの4つのオプションのいずれかが欠落していると、Windowsマシンは、peerノードを検出するために非常に遅いブロードキャストを行います。また、定義されているWINSサーバーまたはDNSサーバーとWindowsマシンが通信できない場合、または誤った情報がこれらのサーバーに格納されている場合も、ホスト名の解決は非常に遅くなります。ping
コマンドを使用して、ホストを効率的に特定できるかどうかをテストします。ping
コマンドは、ホスト名の解決が適切に設定されている場合は即座に応答します。
- レプリケーションでセカンダリIPアドレスを使用するように構成されている場合に、レプリケーションの受信側の状態を変更すると(つまり、開始または停止にすると)、不適切な構成が原因で、ttRepAdminは「Alter replication with "ALTER REPLICATION ... port 0" failed: TT0907: Unique constraint (REPSTORESIX) violated.」というエラーを出力します。
このエラーは、レプリケーションがローカル・データ・ストアを認識しないために発生します。 この状態は、次の問合せによって確認できます。
SELECT * FROM ttrep.ttstores WHERE is_local_store <> 0x0;
この問合せで、行が戻されないか、またはユーザーが指定したホストではなく、hostnameコマンドの結果に設定されているデータ・ストアのメイン・ホスト名を含む行が戻される場合は、/etc/hostsに構成の問題があります。
この問題を解決するには、使用している特別なホスト名が/etc/hostsに定義されていて、特別なホスト名とhostnameコマンドの結果には共通のIPアドレスがあることを確認します。
たとえば、hostnameコマンドによってsoftswitchが戻され、使用しているマシンにはアドレスが10.10.15.136と192.168.15.136の2つのイーサネット・カードが搭載されているとします。 また、softswitchに定義するIPアドレスには、両方のIPアドレスが含まれています。
7.6 クライアント/サーバー
- WindowsのODBC 「Client DSN Setup」ダイアログ・ボックスで、「Server Name」がUNIXホストである場合、そのサーバーでDSNリストを取得する「Refresh」ボタンではリストを取得できず、UNIXサーバーのTimesTenデーモン・ホーム・ディレクトリでコア・ファイルが生成される場合もあります。ただし、既知のDSNが「Server DSN」フィールドに入力され、クライアントDSNエントリが正常に作成され、そのクライアントDNSを使用したWindowsからのTimesTen接続は正常に動作します。
- 『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』には、6.0より前のTimesTenからのクライアント/サーバーのオンライン・アップブレードの手順が記載されています。また、TimesTen 7.0をインストールした後、次の手順を実行する必要もあります。
install_dir_70
のlibttco.so
をinstall_dir_51
にコピーします。
- TimesTen Serverへの複数のクライアント接続を設定する場合は、スタック・サイズ(
-ServerStackSize
デーモン・オプションまたはServerStackSize
属性を使用)を64-bitシステムでは64KB未満、32-bitシステムでは48KB未満に設定しないでください。スタック・サイズが小さすぎると、TimesTen ServerがほとんどのUNIXシステムではSIGSEGVで、HP-UXではSIGBUSで停止します。 - UNIXでttlocalhostを使用すると、あるTimesTenインスタンスのクライアントは、別のTimesTenインスタンスのサーバーに接続できません。この問題を回避するには、ttShmHost(共有メモリーIPC)またはlocalhost(127.0.0.1)を使用します。
- IPCとして共有メモリーを使用している場合に、アプリケーションがシステム定義のプロセスごとのファイル記述子制限に達すると、アプリケーションでクライアント・ドライバからのエラー・メッセージ24が検出される場合があります。これは、アプリケーションにシステム定義のプロセスごとのファイル記述子制限より多くのオープン・ファイル記述子があることが原因で
shmat
システム・コールが失敗した場合に、クライアントDSNへの接続操作中に発生することがあります。
7.7 接続属性
7.8 ユーティリティ、プロシージャおよびSQL
- 引数にTIME、DATEまたはTIMESTAMPデータ型を取るスカラー関数を使用する場合、データ型を示すリテラルを関数の接頭辞として指定する必要があります。たとえば、次のようになります。
SELECT GREATEST (TIME '10:10:10', TIME '12:12:12' ) FROM DUAL;
日時リテラルを指定しないと、TimesTenではデータ型をCHARとして処理します。引数に日時リテラルを取る関数には、GREATEST、LEAST、ROUNDおよびADD_MONTHSがあります。
TimesTenでは、関数ADD_MONTHSおよびROUNDでデータ型TIMEを使用することはできません。
- ROUND(date)は、OracleのDATE型に対してのみサポートされます。
- 次の場合、ROUND (date)、ADD_MONTHS、GREATESTおよびLEAST FUNCTIONSでODBC文PREPAREの実行時にアサーションが発生することがあります。
- 関数の引数の1つに、CASE式またはDECODE関数のいずれかを使用しており、予想されるデータ型が日時である
- CASE式またはDECODE関数の戻り値が、NULLまたはパラメータ・バインディング(decode (x,0,NULL, ?))
たとえば、次のようになります。
SELECT GREATEST (CASE WHEN 'A' LIKE '__' THEN? END, TIME '11:11:11') FROM DUAL;
対処として、次のように、バインド変数またはNULL値を予想される日時データ型にCASTします。
SELECT GREATEST (CASE WHEN 'A' LIKE '__' THEN CAST (? as TIME) END, TIME '11:11:11') FROM DUAL;
- ORDER BY句は、CREATE TABLE AS SELECT文ではサポートされていません。
- LIKE句を含む多言語ソート(NLS_SORT)操作は、_CIまたは_AI拡張子を付けてソートを指定すると、不正確な結果を戻します。
- 問合せに指定した表の総数および問合せの処理に使用した一時集計の最大合計数は32です。一時集計は、スカラーまたは集計副問合せを処理するために必要です。 問合せの表と一時集計の合計数が32を超える場合、問合せは「Statement that needs more than 31 nesting levels has not been implemented」というメッセージを発生して失敗します。
- NLSSORT属性がバイナリ以外の値に設定されている場合でも、CHAR型を指定したCOUNT distinctでは、バイナリ・ソート順序およびバイナリ比較セマンティクスを使用します。
- NLS_SORTセッション・パラメータが多言語ソート(FRENCH_Mなど)に設定されている場合、パターン一致のワイルド・カード記号が空白文字に適用されると、LIKE演算子で不正確な結果が戻される場合があります。
- JDBCアプリケーションのSQL問合せ文字列には、データベース・キャラクタ・セットの文字のみを含める必要があります。データベース・キャラクタ・セットに含まれないUnicode文字は、問合せの解析時に、代替文字に変換されます。 次の方法で対処できます。
- データベース・キャラクタ・セットとしてAL32UTF8を使用する。
- データベース・キャラクタ・セット以外の文字を問合せテキストで使用しないように、問合せをパラメータ化する。
- TO_CHAR SQL関数がBINARY_FLOATおよびBINARY_DOUBLE値に適用されると、一貫性のない結果になる(切捨てまたは四捨五入)場合があります。TO_CHARでは、四捨五入が必要なNUMBER値が切り捨てられる場合もあります。
- マテリアライズド・ビューのディテール表に対する挿入や更新には、MERGE文を使用できません。
- ディスクへのロギングが無効なデータ・ストアに対するMERGE操作は、エラーが戻され、失敗します。
- HP-UXでアプリケーション・プロセスがOracle TimesTenデータ・ストアに接続し、そのアプリケーション・プロセスが同じデータ・ストアに関連付けられているトランザクションのttXactIdRollbackユーティリティAPIをコールすると、そのコールは失敗します。これは、データ・ストアの共有メモリー・セグメントにアタッチできないことが原因です。
- ttOptSetColIntvlStats組込みプロシージャに対する4つ目の引数(
stats
)は、ODBCファンクションを使用してパラメータ化できない複合構造です。 つまり、次のような文は失敗します。
SQLPrepare(hstmt, "call ttOptSetColIntvlStats('t1', 'c1', 1, ?)", SQL_NTS);
同様に、ttIsql describe
コマンドも失敗します。これは、stats
引数に既知の型が含まれないためです。
7.9 JDBC
- 期間がB.C.のデータを持つDATEフィールドの場合、クライアント/サーバー・モードでは、ResultSet.getString()は正常に機能しません。対処方法として、ResultSet.getTimestamp()を使用してください。
- JDK 5.0は、AIXまたはLinux AS 3.0(Itanium 64-bit)では使用できません。
- Javaアプリケーションおよび解決方法への影響について、
http://java.sun.com/developer/technicalArticles/Intl/USDST
の記事「U.S. Daylight Saving Time Changes in 2007」を参照してください。その他のJDK/JREプロバイダについては、ベンダーのドキュメントを参照してください。 - HP-UX 11 Systemsでは、32-bit JDBCクライアント・ドライバとダイレクト・ドライバは、1つのJVMに共存できません。これは、共有ライブラリのロードに問題があるためです。
- 夏時間のあるタイムゾーンで実行しているJDBCアプリケーションが、ResultSet.getTimestampを使用して存在しない時間を選択すると、1時間遅れの時間が取得されます。たとえば、太平洋標準時で、時間が標準時間から夏時間に変更される日には、2:00 a.m.から2:59 a.m.の間の時間は存在しません。 この場合に、標準時間で実行されているJDBCアプリケーションがgetTimestampを使用して'2002-04-07 02:00:00'の値を選択すると、'2002-04-07 01:00:00'が取得されます。
- Cache Connect to Oracle JDBCアプリケーションでは、Oracleへの接続を確立する際に、Solarisスレッド・ライブラリでデッドロックが発生する場合があります。これは、OracleおよびSolarisでの既知の不具合です(Oracle Bug#2095266および#2002293、SUNのケースID 62645007)。これは、SolarisでJava JDK 1.4以上とともにOracle TimesTen Cache Connect to Oracleを使用した場合に発生します。Solaris 8でこの問題を回避するには、
/usr/lib/lwp
内の代替スレッド・ライブラリを使用するように、LD_LIBRARY_PATHを変更します。例:
setenv LD_LIBRARY_PATH=/usr/lib/lwp:$LD_LIBRARY_PATH
7.10 JMS/XLA
- JMS/XLAは、国際化をサポートするためにOracle GDKを使用します。
timestenjmsxla.jar
には、JMS/XLAの動作がテスト済のorai18n.jar
が含まれています。JMS/XLAは、orai18n.jar以外のバージョンでも動作しますが、動作は保証されていません。 その他の詳細は、『Oracle TimesTen In-Memory Database Java開発者およびリファレンス・ガイド』を参照してください。この問題の対処は次のとおりです。
- ご使用のOracle 11g のJavaアプリケーションでJMS/XLAが不要な場合は、CLASSPATHに
timestenjmsxla.jar
を指定しないでください。 - ご使用のOracle 11g のJavaアプリケーションでJMS/XLAが必要な場合は、CLASSPATHで
timestenjmsxla.jar
の前に11gのorai18n.jar
を指定します。
- スループットの問題を回避するため、通常はLinux(特にRed Hat Linux 3)で実行するJMS/XLAアプリケーションでは、『Oracle TimesTen In-Memory Database Java開発者およびリファレンス・ガイド』の高いイベント率の処理に関する項のパフォーマンスのガイドラインに従って、これらの問題に対処する必要があります。
8. Oracleサポート・サービス
オラクル製品サポートの購入方法、およびOracleサポート・サービスへの連絡方法の詳細は、次のURLを参照してください。http://www.oracle.com/support/contact.html
9. 著作権情報
Oracle TimesTen In-Memory Databaseリリース・ノート, リリース7.0.5
部品番号: E06240-01
原本名: Release Notes for Oracle TimesTen In-Memory Database 7.0.5.0.0
原本部品番号: B31692-09
Copyright ©1996, 2008, Oracle.All rights reserved.
制限付権利の説明
このプログラム(ソフトウェアおよびドキュメントを含む)には、オラクル社およびその関連会社に所有権のある情報が含まれています。このプログラムの使用または開示は、オラクル社およびその関連会社との契約に記された制約条件に従うものとします。著作権、特許権およびその他の知的財産権と工業所有権に関する法律により保護されています。独立して作成された他のソフトウェアとの互換性を得るために必要な場合、もしくは法律によって規定される場合を除き、このプログラムのリバース・エンジニアリング、逆アセンブル、逆コンパイル等は禁止されています。
このドキュメントの情報は、予告なしに変更される場合があります。オラクル社およびその関連会社は、このドキュメントに誤りが無いことの保証は致し兼ねます。これらのプログラムのライセンス契約で許諾されている場合を除き、プログラムを形式、手段(電子的または機械的)、目的に関係なく、複製または転用することはできません。
このプログラムが米国政府機関、もしくは米国政府機関に代わってこのプログラムをライセンスまたは使用する者に提供される場合は、次の注意が適用されます。
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, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software—Restricted Rights (June 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.
このプログラムは、核、航空産業、大量輸送、医療あるいはその他の危険が伴うアプリケーションへの用途を目的としておりません。このプログラムをかかる目的で使用する際、上述のアプリケーションを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。万一かかるプログラムの使用に起因して損害が発生いたしましても、オラクル社およびその関連会社は一切責任を負いかねます。
Oracle、JD Edwards、PeopleSoft、Siebelは米国Oracle Corporationおよびその子会社、関連会社の登録商標です。その他の名称は、他社の商標の可能性があります。
このプログラムは、第三者のWebサイトへリンクし、第三者のコンテンツ、製品、サービスへアクセスすることがあります。オラクル社およびその関連会社は第三者のWebサイトで提供されるコンテンツについては、一切の責任を負いかねます。当該コンテンツの利用は、お客様の責任になります。第三者の製品またはサービスを購入する場合は、第三者と直接の取引となります。オラクル社およびその関連会社は、第三者の製品およびサービスの品質、契約の履行(製品またはサービスの提供、保証義務を含む)に関しては責任を負いかねます。また、第三者との取引により損失や損害が発生いたしましても、オラクル社およびその関連会社は一切の責任を負いかねます。