SERIOUS: Extracted archive and cache files differ for filename.h-23:incl:DCM#1:
Cache file path: database_path\st_root\cache\source\#28\149628
Cache file size: 6228
Extracted file path: database_path\st_root\tmp\check\filename.h_UBAABLII
Extracted file size: 12367
Archive path: archive/source/incl/ccm_rcs/DCM#1/20/filename.h,v
在该示例中,ccm fs_check 命令从归档抽取的源与相同对象版本的高速缓存文件不匹配。文件大小也不同。对象版本的所有者必须比较这些源,以确定哪个版本正确。
> del database_path\st_root\cache\source\#28\149628
> ccm cat filename.h-23:incl:DCM#1 > nul
如果高速缓存文件正确,请向文本文件添加受影响对象的由四部分组成的名称。然后,运行 ccm archive_fix 命令以重新创建具有高速缓存文件的归档。
请参阅归档转换常见问题及解答 - fs_check 命令,以获取有关运行 ccm archive_fix 命令的指示信息。如果您需要帮助,请联系 IBM® Rational 支持人员,并提供 ccm fs_check 日志输出。
归档缺失或损坏。如果高速缓存文件正确,请向文本文件添加受影响对象的由四部分组成的名称。然后,运行 ccm archive_fix 命令以重新创建具有高速缓存文件的归档。
请参阅归档转换常见问题及解答 - fs_check 命令,以获取有关运行 ccm archive_fix 命令的指示信息。
对象在数据库元数据中缺少源属性。重新创建源属性可以解决此问题。但是,完全纠正损坏可能需要更多步骤。
必须对受影响对象使用相应类型创建源属性。例如,如果对于类型为 project 的对象 (myproject-2:project:1) 报告此问题,请运行以下命令创建缺失的源属性:
> ccm attr -create source -t project myproject-2:project:1
对于类型为 directory 的对象,缺失的源属性可能为:
> ccm attr -create source -t dir mydir-2:dir:1
project 或 directory 类型对象的高速缓存文件始终是零长度文件。 创建缺失源属性以修复此损坏。确保高速缓存文件长度为零,然后运行 ccm archive_fix 命令以重新创建归档。
请参阅归档转换常见问题及解答 - fs_check 命令,以获取有关运行 ccm archive_fix 命令的指示信息。
但是,不一定总是能简单地纠正该损坏。对于 ASCII 类型对象,源属性包含对象版本的实际源。对于二进制对象,源属性包含指向高速缓存的路径。如果您有任何问题,请联系 IBM Rational 支持人员。
对象版本为非静态,这意味着它未被检入。 因此,没有归档。
如果您在工作区中具有对象版本源的副本,请以 ccm_root 身份创建高速缓存文件。
Create file at database_path\st_root\cache\source\#56\123456
然后,将源从工作区文件复制到高速缓存文件。但是,如果您没有工作区副本,那么必须在 database_path\st_root\cache\source\#56\123456 中创建空高速缓存文件。 然后,删除对象版本,或将该对象不同版本的源复制到高速缓存中。
确保与已修改对象版本关联的任何任务仍准确无误。如果替换高速缓存中对象版本的源,那么必须修改任务或取消任务与对象版本的关联。这样做可确保任务在对象版本代码中包含工作的准确描述。
name-version:type:instance 的内部归档信息必须正好三行:归档程序、标识和路径。归档已损坏。 您必须运行 ccm archive_fix 命令以重新创建可用的高速缓存文件。
请参阅归档转换常见问题及解答 - fs_check 命令,以获取有关运行 ccm archive_fix 命令的指示信息。
系统无法确定 name-version:type:instance 的归档文件路径。 源属性已损坏。尝试手动设置该属性。 在运行 ccm archive_fix 命令以对其进行验证之前,获取指向高速缓存文件的路径。以下是高速缓存文件路径的格式:
database_path\st_root\cache\source\#last 2 digits of cvid\cvid
对于当前数据库中的每个对象版本,您必须具有唯一的 cvid:
> ccm prop name-version:type:instance –f > cvid
ccm attr –d source name-version:type:instance
ccm attr –c source –t ascii –v “database_path\st_root\cache\source\#last 2 digits of cvid\cvid” name-version:type:instance
对所有其他对象版本重复此操作。确保您使用其唯一标识。 然后,重新运行 ccm archive_fix 命令以确保纠正所有错误。如果您需要帮助,请联系 IBM Rational 支持人员。