无法访问 clearcase 中的签出或签入文件

not able to access checkout or checkin file in clearcase

我无法将 clearcase 中的文件之一从 dev 流传送到 int 流。它失败了,我在 int stream 上做了一个撤消检查,它创建了一个零版本。现在我无法签出文件,它说 错误:签出文件但无法复制数据。未知的 vob 错误。

我签出并用另一个文件覆盖并尝试签入,它说。 签入失败:不是 BDTM 容器

我试图删除零版本和分支,它说 无法删除 - 不是 BDTM 容器

我也无法打开文件,它说没有这样的文件或目录。我可以在其他分支上看到版本,但看不到这个零版本

我得到了这个 ibm 支持页面,但它对我没有帮助。 http://www-01.ibm.com/support/docview.wss?uid=swg21294695 请指教

Binary Delta Type Manager 容器有几个您需要注意的细节:

  1. 它存储为包含增量数据的 gzip 文件,部分为文本,部分为二进制。
  2. 每个分支有一个容器,现有版本 > 0。
  3. ...\branch[=43=]版本(\main[=44=]除外)实际上使用了parent分支的容器。

那么,这在现实中意味着什么?您至少有一个损坏的源容器。

  • 如果您正在签出...\branch[=43=],则损坏的是 PARENT 分支的容器。在 parent 版本上执行 cleartool dump 以获取容器路径,然后跳到下面
  • 如果您要检出...\branch 或更高版本,请转储您尝试检出的版本以获取源容器路径。那么...

检查文件数据和元数据:

  • 如果它小于 47 字节(.gz 文件的最小大小),则它已损坏。如果它是 0 字节,则说明有什么东西干扰了签入过程。
  • 如果文件较大,尝试使用 gzip -d < {file path} > temp.txt 解压缩,然后在文本编辑器中打开文件。它应该有一个 header 包含很多版本 OID 之类的...
  • 如果 gzip 出错,根本不解压缩文件,打开文件并检查其内容。它可能不包含压缩数据。
  • 如果 gzip 出现数据完整性错误或 premature-EOF 错误,则很可能是文件系统问题导致文件损坏。

解决方案是从备份、远程副本替换容器,或者 "ndata" 版本。这不是最好在 Whosebug 上讨论,而是通过 PMR 讨论。