source_modify_time 属性に、オブジェクト・バージョンが最初に静的状態にチェックインされた時刻が設定されています。この設定は、キャッシュ・ファイルのタイム・スタンプと一致している必要があります。
キャッシュ・ファイルのチェックイン後に、ccm_root ユーザーがキャッシュ・ファイルを編集しました。
WARNING: filename.c-2:csrc:DCM2#2's cache file modification time is NEWER than its source modification time in the database:
Cache file path:
database_path/st_root/cache/source/#83/27783
Source modification time: Wed Jul 19 11:40:15 2009
Cache modification time: Tue Sep 05 13:03:08 2009
最初に、キャッシュ・ファイルを安全なバックアップ・フォルダーに移動します。
% mv database_path/st_root/cache/source/#83/27783 /tmp/27783.saved
% ccm finduse filename.c-2:csrc:DCM2#2
% ccm cat filename.c-2:csrc:DCM2#2 > /dev/null
この操作により、キャッシュ・ファイルがアーカイブから再作成されます。ここで、このファイルを、/tmp ディレクトリーに移動したキャッシュ・ファイルと比較します。両方のファイルが同一の場合、保存したファイルを削除します。同一でない場合は、『重大なリカバリー可能エラー』の指示に従ってエラーを修正します。
ASCII タイプのオブジェクト・バージョン、または ASCII タイプに基づくオブジェクト・バージョンに、7 ビットの ASCII 文字セットに属さない文字が 1 つ以上含まれるソースがあります。
旧バージョンの Rational® Synergy の場合、ASCII アーカイバーはこれらのバイナリー文字の最初の文字をファイル終了 (EOF) マーカーとして扱うため、この警告は、アーカイブ内でソースが切り捨てられていることを示している可能性もあります。最新リリースでは、ソースは自動的にバイナリー・タイプとしてアーカイブされるため、この警告が表示されるのは、旧リリースのソフトウェアか、最近アップグレードされたデータベースの場合です。
この破損を修正するには、バイナリー・アーカイバーを使用してオブジェクト・バージョンを再アーカイブします。影響を受けるオブジェクト・バージョンそれぞれに対して、handle_source_as 属性を作成し、binary に設定します。続いて、ccm archive_fix コマンドを実行して再アーカイブを行います。
% ccm attr –c handle_source_as –t string –v “binary” myfile.txt-1:ascii:2
続いて、ccm archive_fix コマンドを実行してソースをアーカイブします。オブジェクト・バージョンのタイプは変更されませんが、ソースのアーカイブ方法として、バイナリー・ソース・ファイル用の方法が使用されます。
ccm archive_fix コマンドの実行方法について詳しくは、『アーカイブ変換に関するよくある質問 - fs_check コマンド』を参照してください。
Cachefile path: database_path/st_root/cache/source/#56/123456
Archive path: archive/source/ascii/ccm_rcs/1/3/name,v
Archive version: 1.1
アーカイブ・オブジェクト・ソースとキャッシュ・ファイルの復帰が異なります。Windows サーバーでは、ASCII キャッシュ・ファイルはすべて Windows の ASCII フォーマットです。UNIX サーバーでは、ASCII ファイルはすべて UNIX の ASCII フォーマットです。この警告は通常、データベース・ファイルを適切に変換せずに、オペレーティング・システム・フォーマット間でデータベースを移動した場合に表示されます。
この問題が報告されるオブジェクトが少数の場合は、どのファイルが正しいかを判別して、ファイルを置き換えます。このフォーマットの問題がデータベース内のすべての ASCII オブジェクト・バージョンに影響する場合は、IBM® Rational サポートに連絡して、すべてのファイルを変更する方法を確認してください。