|
|
|
Caché ドキュメント
|
|
Caché 5.0.12 リリース・ノート
|
ポスト・リレーショナル・データベース Caché をご利用いただき、ありがとうございます。このドキュメントでは、
Caché 5.0.11 と
Caché 5.0.12 の違いを説明します。
ご利用になる前に、Caché 5.0 リリース・ノート (Caché インストール・ディレクトリの Docs/GCRN/GCRN.html ファイルにある) を参照してください。以前の 5.0 メンテナンス・キットに関する詳細は、このファイルと同じディレクトリにある prenotes.htm を参照してください。
このドキュメントには、以下のセクションが含まれています。
Caché の最新ニュース、アラート、アドバイザリ
インターシステムズは、当社のソフトウェアをお使いのユーザに対し、早急に必要となる重要な情報を随時発表しています。この中には、警告、不可避の問題点、重要な更新、修正、Caché のリリースなどがあります。
最新のリストは、インターシステムズの Web サイト から取得できます。
ユーザはこのリストを定期的にチェックし、お使いのアプリケーションの処理に関連する問題がある場合、その最新情報を確認してください。
オンライン・ドキュメント
インターシステムズは、ユーザの利便性を考慮し、当社
Web サイト で最新バージョンの Caché ドキュメントにオンライン・アクセスできます。
当社ホームページで [Caché] タブをクリックし、[製品情報] メニューの [技術資料とカタログ] を選択してください。あるいはこのリンクをたどってください。
今回の変更による影響をお使いのアプリケーションで認識するため、各変更の解説では、修正点を詳細に説明しています。
すべての変更に対し、問題発生の可能性、変更による影響、実運用しているシステムで製品が問題なく動作しているかなど、関連情報を示した表があります。表では 1 つまたは 2 つのキーワードと値のみ使用し、情報を簡単に認識できるようにしています。キーワードの意味は、以下の通りです。
- 可能性 - 該当するプラットフォームのユーザにこの問題が生じる可能性
- 危険性 - この変更がアプリケーション環境に新たな問題を誘発する可能性
- パッチ - この変更が以前にパッチとして配布され、実運用しているシステムで問題なく動作しているかどうかの有無
- 拡張性 - この変更が新機能や拡張機能を提供するかの有無
- CSP
- CSP : ゲートウェイ
- 言語
- ネットワーキング
- オブジェクト
- オブジェクト : クラス・コンパイラ
- オブジェクト : リレーションシップ
- オブジェクト : ストレージ : 既定
- オブジェクト : XML
- SQL
- SQL : DDL
- SQL : ゲートウェイ
- SQL : ODBC
- SQL : クエリ処理
- SQL マネージャ
- システム
- システム : バックアップ/リストア
- システム : クラスタ固有
- システム : ジャーナリング
- システム : シャドウイング
- システム : シャットダウン
- ユーティリティ
カテゴリ : CSP
プラットフォーム : すべて
DevKey : MAK1153
要約 : %CSP.SysConnection はセッション・データをクライアントに公開
説明 :
%CSP.SysConnection (CSP ゲートウェイから Caché サーバーへの接続のテストに使用される) が、そのゲートウェイからのみ呼び出し可能であることを確認します。もしゲートウェイ以外の場所から呼び出されると、HTTP エラー (ページが見つかりません) が返されます。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : CSP
プラットフォーム : すべて
DevKey : MAK1177
要約 : charset とコンテンツ・タイプが指定されている場合、常に 'charset=' ヘッダを完全に書き出し、この charset を使用
説明 :
CSP ページで 'ContentType' および 'CharSet' を指定している場合、Caché では常に 'charset=<charset>' ヘッダを出力し、要求された charset を使用してページを書き出します。
%CSP.Page は、デフォルトでは CharSet を定義しません。そのため、この変更は、ContentType と CharSet が明示的に定義されているページにのみ影響します。
今回の変更が行われる前は、ContentType に 'text/' が含まれる場合、CSP は'charset' ヘッダを書き出すだけでした。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
あり |
カテゴリ : CSP : ゲートウェイ
プラットフォーム : すべて
DevKey : CMT204
要約 : ステータス認識セッションが Linux 環境でロックすることがある問題を解決
説明 :
この変更により、ステータス認識セッション (preserve モード 1) が、特に Linux システムにおいてロックする場合があるという問題が解決されました。極端な場合では、ゲートウェイが他のユーザーに対して応答しなくなるという事態が生じていました。この原因は、セッション終了またはタイムアウト・イベントに応答する際の内部メモリ・アクセス侵害でした。
ステータス認識接続の整合性チェックが改良され、終了したセッションを検出して応答するためのロジックが書き直されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : 言語
プラットフォーム : すべて
DevKey : DAS587
要約 : 指数が大文字の 'E' になるようにスイッチを提供
説明 :
リリース 4.1 以来、Caché では、科学的表記法における指数の数字の指定子は、大文字または小文字 ('E' または 'e') のどちらで記述してもよいこととしていました。しかしこれは、大文字の 'E' のみを認識する M 言語の他のダイアレクトで書かれたプログラムとは互換性がありませんでした。これらのプログラムでは、小文字の 'e' を文字列の区切り文字として使用します。今回の変更では、大文字の 'E' のみを指数の指定子として認識する動作をリストアするスイッチが提供されました。デフォルトの動作では、引き続き小文字の 'e' の使用が許可されます。
現在のプロセスのスイッチの値を変更するには、以下を発行します。
SET oldvalue=$ZUTIL(68,63,newvalue)
このコマンドの実行後に開始されるすべてのプロセスのスイッチの規定値を変更するには、以下を発行します。
SET oldvalue=$ZUTIL(69,63,newvalue)
新しい値が 1 の場合、大文字の 'E' と小文字の 'e' のどちらもが指数の指定子として認識されます。新しい値が 0 の場合、大文字の 'E' のみが認識されるようになります。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK301
要約 : 失敗した ECP ノードのリカバリですべての可能性のある ECP セッションをスキャン
説明 :
ECP リカバリ中に、すべての ECP セッションはリセットされる必要があります。今回の変更により、以前のセッションのいくつかが正しく識別されず、その結果としてリカバリ時にリセットされないという問題が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK314
要約 : ECP クライアント・シャットダウン待機ループの修正
説明 :
従来のバージョンでは、ECP クライアント・シャットダウンではドロップするすべての接続を待機せず、自由なノードを適切に処理できませんでした。今回の変更により、クライアント・シャットダウンですべての割り当てられたスロットがスキャンされるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK317
要約 : ECP リカバリでオープン・トランザクションのないセッションをクリーンアップ
説明 :
ECP リカバリでは、セッションにオープン・トランザクションがない場合、ECP セッション情報を除去できませんでした。セッション・スロットがクリアされないため、次のシステム再起動時に、そのクライアントの再接続に不必要に長い時間待機する必要が生じていました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK324
要約 : ライト・デーモンがクラスタ・フェイルオーバーに結合できないようにしていたタイミングの問題を修正
説明 :
今回の変更前は、速度の遅いマシンでは、ライト・デーモンがクラスタ・フェイルオーバーに速やかに結合せず、その結果としてフェイルオーバーが永久的に停止することがありました。
これは、ライト・デーモンのリカバリ・ステータスを上書きするクラスタ間同期が、新しいクラスタ・マスタがリカバリを再開することを阻んでいたためでした。現在は適切に動作するようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK325
要約 : リカバリ中に予期しないエラーが生じた ECP クライアント・セッションをリセット
説明 :
今回の変更により、ECP クライアント・リカバリ中に生じた予期しないデータベース・エラーによってリカバリが停止するという問題を修正しています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK326
要約 : 接続処理中ステータスに生じるシステムの停止を処理できるよう、新しい ECP 接続ステータスを追加
説明 :
今回の変更により、ECP が接続ステータスを処理する方法が修正されました。従来は、予期しないエラーにより ECP が停止して再接続の待機状態になった場合、これをクリアする唯一の方法は Caché を再起動することでした。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK349
要約 : 停止している ECP 保留トランザクション・ビットのクリアまたは停止ジョブのクリーンアップ
説明 :
ジョブが予期せずに終了した場合 (アクセス侵害による場合など)、ECP はそのクライアントに対して保留状態のオープン・トランザクションをクリアしませんでした。同じプロセス・スロットに割り当てられた次のジョブはこれらのトランザクションを継承し、クライアントおよびサーバー・ステータス間で混乱を引き起こしていました。今回の変更により、クリーンアップが適切に行われるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : ネットワーキング
プラットフォーム : すべて
DevKey : GK350
要約 : ECP オープン・トランザクションを処理する %HALT
説明 :
%HALT は、クライアント・ジャーナリングが無効にされた場合、ECP オープン・トランザクションをロールバックしませんでした。今回の変更により、ECP オープン・トランザクションをロールバックする動作が修正されています。
メモ : アプリケーション・サーバー・ジャーナリングが無効にされている場合は、ロールバックは <ROLLFAIL> エラーを返します。%HALT はまず ECP トランザクションをロールバックし、次に <ROLLFAIL> エラーを返します。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : オブジェクト
プラットフォーム : すべて
DevKey : BJB291
要約 : KeepClassUpToDate = 1 の場合選択は保存されない
説明 :
$SYSTEM.SQL.TuneTable ("Schema.Table",1,1) を実行している場合、選択はクラス定義の一部として保存されませんでした。この問題は、修正されています。
| 可能性 |
高 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : オブジェクト : クラス・コンパイラ
プラットフォーム : すべて
DevKey : DLP1025
要約 : 継承の解決のためにあらかじめ構築された継承ツリーを使用しない
説明 :
稀な状況下で、クラスのコンパイル時に "メソッドが存在しない" というエラーが報告されることがありました。これは、どのメソッドがスーパークラスから継承されるかを決定する際のエラーによって引き起こされていました。今回のリリースで、この問題は修正されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : オブジェクト : クラス・コンパイラ
プラットフォーム : すべて
DevKey : MAK1042
要約 : XML からサイズの大きな実装ブロックと共にクラスをインポートする場合に <MAXSTRING> を防止
説明 :
XML ファイルから、非常に長い実装 (64k を超えるデータ) と共にクラスを Caché にインポートする場合、MAXSTRING エラーが発生する可能性がありました。インポート・ルーチンは、最初の 32k のブロックの最後の行の冒頭と、次のブロックを連結しようと試みるため、これが 32k の制限を超過する原因となっていました。今回の修正では、最後の行の冒頭部分が別のバッファに保存され、次の 32k のブロック全体ではなく最初の行の残りの部分とのみ連結されるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : オブジェクト : リレーションシップ
プラットフォーム : すべて
DevKey : DLP1064
要約 : 関連オブジェクトの拡張時に変更したビットを設定しない
説明 :
参照が拡張される場合、そのプロパティに対する変更したビットは変更されないようになりました。この変更により、動作が修正されました。変更したビットの値は、単一の拡張に対して変化しません。
| 可能性 |
高 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : オブジェクト : ストレージ : 既定
プラットフォーム : すべて
DevKey : DLP1288
要約 : %DeleteExtent 内の空のインデックス・グローバルをクリーンアップ
説明 :
クラスのビットマップ・エクステント・インデックスは、インデックスが構築されておりビットマップ・エクステントが構築されていない場合に、自動的に構築されます。すべてのインスタンスがエクステントから削除されると、ビットマップ・エクステント・インデックスが既に構築されたとシステムが誤って判断してしまう状況が生じていました。
この問題は、エクステントが削除された場合はいつでもインデックスがパージされるようにすることで、解決されました。いずれかのインスタンスの削除に失敗した場合、インデックスはそのまま残ります。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : オブジェクト : XML
プラットフォーム : すべて
DevKey : JN228
要約 : 解析後にストリーム OREF を解放
説明 :
SAX パーサーは、パフォーマンス上の理由で使用する XML パーサーをキャッシュします。エンティティの解析中、CacheStream が %XML.SAX.EntityResolver とそのサブクラスへのコールバックを通して作成される場合があります。パーサー・キャッシングの副次作用として、これらのストリーム・オブジェクトの OREF も同様にキャッシュされます。(これらはやがて、ガーベッジ・コレクトされますが、これは非決定的に実行されます)。この現象は、パーサーのユーザーが、ストリームのガーベッジ・コレクトが行われる前にネームスペースを変更する予定であった場合に、問題を引き起こします。
今回のリリースでは、解析が終了するとすぐにストリームを再要求することにより、このエラーが修正されました。
| 可能性 |
低 |
| 危険性 |
中 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : オブジェクト : XML
プラットフォーム : すべて
DevKey : JN229
要約 : EndElement NodeType %XML.TextReader に対して LocalName を返す
説明 :
XML Reader Nodetype が 'endelement' の場合、LocalName プロパティは空の文字列を返していました。今回の修正で、正しい値が返されるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2248
要約 : MapBlock の決定時に添え字でフィールドを使用
説明 :
マップの推定ブロック使用量の計算が拡張され、マップのマップ添え字内のフィールドに関する情報を含めるようになりました。フォーム
^glo("index",Field1,Field2,ID)=""
のインデックスは、次のフォームのインデックスよりも高い "コスト" を持つようになります。
^glo("index",Field1,ID)=""
クエリ・オプティマイザで Field1 のインデックスを使用できる場合、2 番目のインデックスが選ばれる必要があります。
| 可能性 |
低 |
| 危険性 |
中 |
| パッチ |
あり |
| 拡張性 |
あり |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2252
要約 : SQL マネージャを介したチューニング・テーブルがマップ統計を更新していない
説明 :
テーブルのクエリ・オプティマイザの情報が、クラスがリコンパイルされるまで完全に更新されないという不具合が修正されました。これは、テーブルのエクステント・サイズが SQL マネージャのチューニング機能によって計算された場合に生じていました。
| 可能性 |
高 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2255
要約 : 無効な条件には $Get() を使用する / 必要な場合はマップの一部と共に NEXT コードを使用する
説明 :
%CacheSQLStorage のストレージマップで定義された最後の添え字が定数である場合に、このテーブルに対してランタイム・クエリを実行しようとすると <UNDEFINED> エラーが生じていました。エラーが生じるかどうかは、ストレージのグローバル構造の詳細に依存していました。
今回の修正で、このエラーが起こる可能性はなくなりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2267
要約 : ASC が正常に動作しない
説明 :
今回の変更が行われる前は、WHERE 条件内で 2 つのテーブルを JOIN 句で結合し、ORDER BY <f1> DESC、<f2> ASC を持つクエリは、正しい順番で行を返さないことがありました。この問題は、修正されています。
| 可能性 |
低 |
| 危険性 |
中 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2270
要約 : GetCachedQueryInfo で <NULLVALUE> エラーが発生する
説明 :
これまでのバージョンでは、ネームスペースのクエリをリストする際に、Caché ではキャッシュされたクエリのテキストを表示できない場合がありました。今回の変更により、このエラーが修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL
プラットフォーム : すべて
DevKey : DPV2278
要約 : RowID マッピングのクエリ生成の修正
説明 :
この変更により、%CacheSQLStorage を使用してそれ自身の Map RowID 仕様を指定するテーブルが、不正なマップ定義コードを生成する場合があるという状況が修正されました。このエラーは、テーブルのクエリに対して不正に生成されたクエリ・コードの原因となっていました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : SQL : DDL
プラットフォーム : すべて
DevKey : DPV2283
要約 : マップの InvalidCondition 時の <UNDEFINED> エラーを修正
説明 :
この変更により、制約チェック時のエラーが修正されました。状況によって、一意の制約のチェックまたは SQL による外部キー参照整合性チェックを実行すると、<UNDEFINED> エラーが発生する可能性がありました。このエラーは、SQL クエリが制約をチェックする必要があり、その制約が IDKey フィールドにある場合に生じました。
| 可能性 |
中 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
あり |
カテゴリ : SQL : ゲートウェイ
プラットフォーム : すべて
DevKey : MIT356
要約 : CEnvironment::DisconnectAll() の無限ループ
説明 :
状況によって、ユーザーが Caché プロセスを終了した後に、CPU 高負荷が生じる可能性がありました。この現象は、プロセス切断ロジック内の無限ループにより引き起こされていました。今回の変更により、この現象が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : SQL : ODBC
プラットフォーム : すべて
DevKey : JCN482
要約 : ローカライズされた小数点区切り文字を使用
説明 :
DSN 構成画面に、新しいチェックボックス "Use Locale Decimal Symbol" が追加されました。デフォルトでは、一部のユーザーにレガシー・サポートを提供するために、CacheODBC は規定の小数点区切り文字を "." に設定しています。ただしこれは、PowerBuilder のような、小数点区切り文字を現在のロケールに合わせて定義して使用するアプリケーションでは、問題を引き起こします。
チェックボックス "Use Locale Decimal Symbol" をチェックすると、処理中の小数点区切り文字が使用され、その値は変更されずに残されます。このチェックボックスのチェックを外すと、ロケールに関わらず、処理中の小数点区切り文字の既定の設定動作として、"." が使用されます。
この設定は、それがロードされたときのドライバのプロパティであるため、システム上のすべての DSN で定義されます。Unix では、環境変数 CACHEODBCLOCALEDECIMAL = 1 を設定すると、ドライバでロケールの小数点区切り文字の値が使用されます。
| 可能性 |
低 |
| 危険性 |
中 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL : クエリ処理
プラットフォーム : すべて
DevKey : DPV2260
要約 : 16 のマップ添え字とデータ・アクセス式の上書きを持つ長すぎる行の問題の修正
説明 :
状況によっては、SQL クエリが長すぎる単一の行 (4095 文字を超える) を生成する場合がありました。これは、マップ定義内に多数の添え字レベルが存在し (16 以上)、データ・アクセス式の上書きがマップ定義で使用されている場合に生じる可能性があります。
今回の変更により、この不具合が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL : クエリ処理
プラットフォーム : すべて
DevKey : PVA070
要約 : 単一列の IDKEY 列に結合を持つ SELECT クエリが正常に動作しない
説明 :
SELECT 節 'SELECT *' である場合に、単一列の idkey 列の条件 (特に JOIN) が適切に動作しないというエラーが修正されました。この動作により、クエリの実行時に条件が適切に実行されないか、SQLCODE= -400 という結果になっていました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : SQL マネージャ
プラットフォーム : すべて
DevKey : YSD768
要約 : SQL マネージャ/オブジェクト/実行/クエリでメニュー・オプションが動作しない
説明 :
これまでのバージョンでは、SQL マネージャからクエリを実行することを選択し、クエリが入力されたが実行はされていない状態でメニューからオプションを選択すると、クエリが実行されませんでした。ただし、メニュー オプションの代わりにキーボード・ショートカットを使用すると、オプションの選択とクエリの実行が適切に実行されました。
この問題は、修正されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : DAS427
要約 : $ZT="" の場合の ZQUIT 1 を修正
説明 :
この修正では、より低いレベルのエラー・ハンドラが以下を発行した場合に、エラー・ハンドラがスキップされてしまうという問題が解決されました。
この問題は、低いレベルのエラー・ハンドラが $ZT="" と設定した場合に生じました。これにより、ZQUIT 1 コマンドが次のエラー・ハンドラをバイパスしてしまう結果になりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : JO1825
要約 : 停止ジョブをクリーンアップしてグローバル・バッファを解放するよう修正
説明 :
Caché の停止ジョブをクリーンアップするコードは、ジョブがグローバル・バッファを保持しているかどうかを確認して、保持している場合はそれを解放するようになりました。
メモ : これは、停止ジョブが所有しているすべてのグローバル・バッファが解放されるという意味ではありません。多くの場合、バッファを開放すると、データベースの性能低下がディスクに書き込まれる結果となるため、バッファの開放は安全ではありません。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : JO1826
要約 : Caché 共有メモリ・セクションが存在する場合、書き込みイメージ・リストアが実行拒否
説明 :
Caché がリストアの一部として指定されたマネージャのディレクトリから実行されている場合、書き込みイメージ・リストア・プログラムは実行を拒否するようになりました。このことを通知するメッセージがコンソール・ログにログ記録されます。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : Unix
DevKey : LRS813
要約 : TCP 読み込みを修正して Unix 環境でのタイムアウト処理を受け入れ
説明 :
Caché/Unix 環境での TCP 読み込み要求のタイムアウト処理に関するバグが修正されました。このバグにより、プロセスが ^%SS、^JOBEXAM、または同様の割り込みユーティリティ・プログラムによってプローブされる場合、READ が指定されたタイムアウトを過ぎても待機し続けるという状況が生じていました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : Windows
DevKey : RJW753
要約 : Windows のログオフにより Caché プロセスの停止が発生
説明 :
Windows システムでは、Windows のコマンド・プロンプト・ウィンドウで実行している、またはローカルの Caché ターミナルから実行している (タイトル・バーに Caché TRM:processId が含まれる) Caché プロセスは、プロセスを開始したユーザーが Windows ワークステーションからログアウトする際に不正終了する場合があります。この不正終了は、これらのプロセスのジョブ・コマンドを通して開始された Caché プロセスでも発生します。この問題は Caché 4.0 以降で解決されています。
今回の変更では、コンソール・コントロール・ハンドラを確立して Windows Logoff イベントをキャッチし、Caché を正常に終了することで、この問題は修正されました。また、ジョブ・コマンドによって開始されたプロセスが作成される方法も変更されたため、プロセスは Windows コンソールからログアウトした後も永続的に存続します。
ジョブ・コマンドで開始されたプロセスでは、ユーザーは 1 つの異なる動作を経験します。プロセスは Caché のフォアグラウンド・プロセスの要求時に Caché コントロール・プロセスによって開始されたため、ジョブ・プロセスはジョブ・コマンドでプロセスを作成したコンソールのユーザーのログイン・セッションでは実行されません。このことは、Windows XP 上では、ジョブ・コマンドによって作成されたプロセスが、Windows コンソールにログインしたユーザーに定義されたドライブ文字のマッピングを使用してネットワーク・デバイスにアクセスできないようになることを意味します。そのため、ジョブ・コマンドによって開始されたプロセスのネットワーク共有にアクセスするには、コードのローカル・ドライブ・マッピング (例 : w:\) ではなく、UNC 命名規則 (例 : \\server\share) を使用する必要があります。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : SJ1560
要約 : 後でアクセス侵害を引き起こしていた JOBEXAM を修正
説明 :
この変更により、JOBEXAM を使用してプロセスを表示すると、プロセスがクラッシュしてアクセス侵害が生じるという稀な状況が修正されました。この障害は、検証されたプロセスが完全にプロセス専用メモリ外にある場合に発生しました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : SML472
要約 : 欠けている 1 つの DDP ジョブ配列の割り当てを修正
説明 :
大きな内部ジョブ番号を持つ MSM ジョブが DDP を使用して Caché システムにアクセスすると、<DSTDB> エラーが発生する場合がありました。
今回の変更により、この問題は修正されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム
プラットフォーム : すべて
DevKey : SML475
要約 : ライト・デーモン・ロック・コンプリート上の欠けているウェイクアップを修正し、マスタのシャットダウン時の ENQ デーモン強制終了を回避
説明 :
この変更により、マスタ・ノードのシャットダウン時にクラスタ・フェイルオーバーが失敗する問題が修正されました。この問題の原因は、ライト・デーモンが、長時間の遅延を伴って終了した場合に、シャットダウン・リクエスターへの通知に失敗することでした。また、クラスタ・ノードのシャットダウン時に、ENQ デーモンが強制終了させられる必要もありました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : バックアップ/リストア
プラットフォーム : すべて
DevKey : HYY885
要約 : クラスタのスイッチ設定プロパゲーションを修正
説明 :
クラスタ・プラットフォームでは、バックアップ中に、更新/アクセスをブロックおよび静止させるプロシージャがエラーとなり、静止に失敗するという状況が生じることがありました。これは、スイッチがローカルに設定されていても、バックアップ・プログラムの外部では、バックアップ中にクリアされてしまうことが問題でした。
今回の変更により、この不具合が修正されました。
| 可能性 |
中 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
あり |
カテゴリ : システム
プラットフォーム : すべて
DevKey : SML476
要約 : ロック・テーブルのスキャンでの ACCVIO を修正
説明 :
今回の変更により、多量のロック・テーブル活動を行う場合に ^LOCKTAB あるいは ^$LOCK SSVN がアクセス侵害される可能性があったタイミング・ウィンドウが排除されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : クラスタ固有
プラットフォーム : すべて
DevKey : JO1798
要約 : クラスタ・フェイルオーバーおよびクラスタ・バックアップ中の ECP のロック・タイムアウトを一時停止
説明 :
CLU^SWSET、ENQ10^DBACK、および ENQ13^DBACK が拡張され、スイッチ 10 または 13 がクラスタ内で設定されている場合は、タイム・ロックがタイムアウトしないようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : すべて
DevKey : HYY762
要約 : ジャーナル・リストアおよびロールバックで NULL 添え字のサポートを有効にする
説明 :
この変更により、ジャーナル・リストアおよびトランザクション・ロールバック中に <SUBSCRIPT> エラーが発生する可能性が排除されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : すべて
DevKey : HYY928
要約 : 現在のジャーナル・ファイルが関連していない場合でも、ジャーナル・リストアでトランザクション・ロールバックを許可
説明 :
インタラクティブ・モードでは、リストアの終了時に未完了のトランザクションが残っていると、ジャーナル・リストアはトランザクション・ロールバックを要求します。これは、現在のジャーナル・ファイルがリストアに関係していない場合でも生じます。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : すべて
DevKey : HYY944
要約 : 次のジャーナル・ファイルを位置指定する上での問題を修正
説明 :
今回の変更により、次のジャーナル・ファイルを位置指定する上での問題が修正されました。従来のバージョンでは、Caché は次のジャーナル・ファイル名を不正に計算することがありました。この問題は、修正されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : Tru64、OpenVMS
DevKey : HYY952
要約 : cachejrn.log の更新の問題の修正
説明 :
クラスタ・ジャーナル・ファイルは、Caché クラスタの pij ディレクトリ内の cachejrn.log にログ記録されます。この cachejrn.log ログは、クラスタ・ジャーナル・リストアおよびクラスタ・シャドウイングに使用され、Caché クラスタの過去から現在を含むすべてのノードによって使用されたすべてのジャーナル・ファイルの位置を特定します。
この変更により、ジャーナル・ファイル名を cachejrn.log にログ記録する際に生じた失敗が、cconsole.log に報告されるようになりました。
VMS では、cachejrn.log を更新すると、読み込み共有が許可され、クラスタ・シャドウイングの代わりに更新の失敗が生じる可能性が排除されます。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : すべて
DevKey : HYY960
要約 : トランザクション・インデックスを適切に更新
説明 :
今回の変更により、オープン・トランザクションの最初のオフセットが、必要な値よりも小さく設定されるという問題が修正されました。これはトランザクション・ロールバックには影響しませんが、返り値が有効なジャーナル・レコードであると仮定するアプリケーションには影響を及ぼす可能性がありました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : OpenVMS
DevKey : HYY964
要約 : VMS 上の順次入出力を使用したジャーナル・ファイルの読み込みに関連する <ENDOFFILE> 問題を修正
説明 :
この変更により、OpenVMS 上で、高速モード・シャドウイングのソースのコピー側が、非常に小さいジャーナル・ファイルの読み込み時に <ENDOFFILE> エラーを受け取る場合があるという状況が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : ジャーナリング
プラットフォーム : すべて
DevKey : HYY966
要約 : 大きなサイズのファイルでジャーナル拡張が失敗した場合、新しいファイルに切り替えるのではなく、小さいサイズで再試行する
説明 :
今回の変更により、ジャーナル・ディスク上の使用可能な領域がジャーナル・ファイルの拡張サイズよりも小さい場合に、必要以上に多くの小さいジャーナル・ファイルが作成されるという問題が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY603
要約 : シャドウでのトランザクション・ステータスを保持 (高速モードのみ)
説明 :
高速モード (または "ブロック・モード") シャドウは、トランザクション指向となり、シャドウで適用される未完了のトランザクションのリストを保持するようになりました。未完了のトランザクションをロールバックするには、シャドウイングを停止して次を実行します。
SET rc=$$ROLLBACK^SHDWCBLK(ShadowID)
ここで、ShadowID はシャドウ名で、"rc" は、1 = success で 0 = failure となる演算に対する結果コードです。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY834
要約 : シャドウ・ソース・ノードが間違って削除される問題を修正
説明 :
この変更によって、コントロール・パネルで "this system as source" を選択すると、シャドウを提供している実行中のサーバーがある場合でも、サーバー情報が何も表示されない (および <UNDEFINED> エラーが表示される場合もある) という問題が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY835
要約 : シャドウイングのエラー・リカバリを向上
説明 :
今回の変更により、エラーが上位レベルのルーチンに渡されたときにスタックが巻き戻される方法に影響を与える問題を解決することによって、シャドウイングのエラー・リカバリ処理が向上しました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : Tru64、OpenVMS
DevKey : HYY946
要約 : JRNINFO の cachejrn.log を開く際のいくつかの問題の修正
説明 :
今回の変更により、次の 2 つの点で改良が行われました。
- シャドウイングのクラスタ・データ・サーバー ("ソース") 上の <NOTOPEN> エラー (updjrninfo^JRNINFO から生成) が防止されるようになりました。
- ソース上の複数のジョブで同時に CACHEJRN.LOG ファイルを読み込み用に開くことが可能になり、結果としてジャーナリングとシャドウイングにおいてパフォーマンスの向上が実現しました。
メモ : 2 番目の点は VMS クラスタにのみ影響します。読み込み共有は Tru64 クラスタでは既に使用されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : OpenVMS
DevKey : HYY951
要約 : VMS でのシャドウイングの <ENDOFFILE> エラーを修正
説明 :
この変更により、OpenVMS 上の高速モード・シャドウイングのソース (データ・サーバーなど) が、<ENDOFFILE> エラーを受け取ることがある問題が修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY953
要約 : クラスタ・シャドウイングのパーティションの問題を修正
説明 :
この変更により、クラスタ・シャドウイングのいくつかのコンポーネントが Caché 構成で指定された量より多くのプロセス・メモリを使用する場合があるという問題が解決されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY956
要約 : ^%SYS("JRNINFO") のジャーナリングの無効化 (クラスタ・シャドウイング用)
説明 :
JRNINFO サーバーによる ^%SYS("JRNINFO") への更新は、ジャーナリングされないことになりました。
これにより、^%SYS("JRNINFO") でジャーナリングが指定されている (または "journal all globals" が 5.0.x で設定されている) 場合に、ユーザー・アクティビティのないソース・サーバーのシャドウが常にビジーであるように見えるというクラスタ・シャドウイングの問題が解決されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY957
要約 : 可能な場合、いつでもクラスタ・シャドウは同じ JRNINFO サーバーに対してデバイスをオープンにする
説明 :
今回の変更により、各クラスタ・シャドウ要求により JRNINFO サーバーからジョブがなくなるというパフォーマンス上の不具合が修正されました。現在は、クラスタ・シャドウに対応する JRNINFO サーバーは、可能な場合はいつでも存続します。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : HYY986
要約 : 非クラスタ・プラットフォーム上でクラスタ・シャドウ GUI を許可
説明 :
この変更により、シャドウを実行しているシステムがクラスタを実行しているシステムと異なる種類である場合に、コントロール・パネルでクラスタ・シャドウを管理しようとすると <UNDEFINED> エラーが報告されるという問題が修正されました。この問題が生じる例としては、VMS クラスタをシャドウイングしている Windows システムなどがあります。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : システム : シャドウイング
プラットフォーム : すべて
DevKey : RJF022
要約 : 互換モードのシャドウでは現在のジャーナルの最後までしか読み込めないようにする
説明 :
互換モード (レコード・モード) のシャドウイングが修正されて、シャドウイングのソースが、現在のジャーナル・ファイルにまだ書き込まれていないシャドウ宛先にジャーナル・レコードを送信することが防止されるようになりました。
この変更により、シャドウイング・ソースが、ジャーナル・スイッチの間に現在のジャーナル・ファイルを処理している途中で、一時的な <FUNCTION> (または他のエラー) を受け取るという問題が修正されました。また、互換モードのシャドウイングがクラッシュした場合に、シャドウ宛先が、リカバリ後にソースで使用可能なトランザクションではなく、より最近完了したトランザクションになるという問題も修正されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
あり |
| 拡張性 |
なし |
カテゴリ : システム : シャットダウン
プラットフォーム : すべて
DevKey : RJW945
要約 : Windows 2003 のシャットダウン時に余分のプロセスが開始
説明 :
Windows Terminal Server システム上で Caché をシャットダウンすると、^SHUTDOWN に 3 分以上かかった場合に、cache.exe プロセスが共有メモリ・オブジェクトにアタッチした状態で残されてしまう場合があります。この残された cache.exe プロセスは、構成共有メモリがシャットダウン時に破棄される妨げになります。これにより、Windows を再起動するか、Windows タスク・マネージャを使用して残余プロセスを終了せずに、Caché を再起動することができないようになっていました。
今回の変更により、すべてのプロセスが正常にシャットダウンできるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : ユーティリティ
プラットフォーム : すべて
DevKey : CFL1150
要約 : クラスタリングをサポートしていないシステムでクラスタ・シャドウの定義を許可
説明 :
今回の変更が行われる前は、Caché では、クラスタ・シャドウをクラスタリングをサポートしていないマシン・タイプに定義しようとすると、実行が拒否されていました。この問題は、修正されています。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : ユーティリティ
プラットフォーム : すべて
DevKey : LFT1292
要約 : 2k データベースの破壊されたディレクトリの処理の向上
説明 :
今回の変更で、非常に古い ISM データベースの整合性チェックの問題が修正されました。グローバル名がトップ・ポインタ・ブロックにない場合、INTEGRIT を実行すると偽のエラーが生じていました。
この問題は、グローバル・ディレクトリ内に実際に重複したポインタがある場合にのみエラーが返されるようにすることで、解決されました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
カテゴリ : ユーティリティ
プラットフォーム : すべて
DevKey : MAK1123
要約 : rMACSAVE データが不整合
説明 :
以前のバージョンでは、スタジオから MAC/INC を保存する際に、^rMACSAVE または ^rINCSAVE に格納されたデータは、不正にフォーマットされたルート・ノードを持つようになっていました。これは、MAC/INC が最後に変更されたときの $horolog 値である必要がありました。
今回の変更により、適切な値が設定されるようになりました。
| 可能性 |
低 |
| 危険性 |
低 |
| パッチ |
なし |
| 拡張性 |
なし |
ドキュメントの更新
Caché ドキュメントの内容は、編集上の改良、既存の内容の更新、新しい情報の追加など、リリースに従い改訂されています。以下は、以前のリリースから Caché ドキュメントに追加された重要な変更の概要です。