在ClearCase中,在向源代码管理添加新文件后,变更集和动态视图需要多长时间才能更新?

在ClearCase中,在向源代码管理添加新文件后,变更集和动态视图需要多长时间才能更新?,clearcase,Clearcase,我试图了解ClearCase操作在执行添加到源代码管理操作后需要多长时间 如果我正在通过CCRC快照视图工作,并且我向源代码管理添加了一个文件,那么使用新行更新变更集需要多长时间,以及在操作完成之前多长时间,新文件才能在指向文件签入的流的动态视图下可用 有没有办法通过调用动态视图的手动更新或其他方法来加速该过程 问候, 安德鲁 使用新行更新变更集需要多长时间 一旦您签出一个文件,选择一个活动,它将立即更新所述活动的chenge集 只有在您签入(通过CCRC中的web快照视图)后,动态视图才会反映

我试图了解ClearCase操作在执行添加到源代码管理操作后需要多长时间

如果我正在通过CCRC快照视图工作,并且我向源代码管理添加了一个文件,那么使用新行更新变更集需要多长时间,以及在操作完成之前多长时间,新文件才能在指向文件签入的流的动态视图下可用

有没有办法通过调用动态视图的手动更新或其他方法来加速该过程

问候,

安德鲁

使用新行更新变更集需要多长时间

一旦您签出一个文件,选择一个活动,它将立即更新所述活动的chenge集

只有在您签入(通过CCRC中的web快照视图)后,动态视图才会反映该文件,并且该更新也几乎是即时的。
为了加快速度,您可以刷新动态视图,或者在您希望看到更新的目录中执行ClearToolls

在每种情况下,当您通过CCRC进行签出或签入时,您向CCRC服务器发送一个http请求,然后CCRC服务器通过ClearCase Vob/View服务器完成操作。
因此,一旦签出/签入完成,任何其他ClearCase视图(CCRC或非CCRC)都将准备好反映更改。
唯一需要花费时间的部分是CCRC客户端和CCRC服务器之间的通信。该服务器通常与ClearCase服务器位于同一LAN上,ClearCase命令本身执行得相当快


“相当快”对于OP的需要来说太慢了:签入时的后期触发器


该触发器在服务器端使用ClearCase动态视图,并且必须在元素签入(在
mkelem
)上引入睡眠,以便该触发器的第二次调用(在正在签入的父目录上)正确检测新创建的文件。

理论上,它应该是即时的。添加完成后,动态视图就会看到新文件。实际上,由于ClearCase及其视图过程的性质,可能需要更长的时间

每个视图都有一个在视图服务器(本地或远程)上运行的进程,该进程需要查询VOB服务器以获取更改

在我们的ClearCase环境中,我们看到许多延迟,这些延迟可能是负载服务器和网络流量的组合


底线-应该是快速的(秒),但不是瞬间的。如果需要更长的时间,您应该尝试看看什么可能会减慢进程。

当我首先在新文件中执行
添加到源代码管理
ClearCase检查,然后在更新的目录版本中进行检查时。这意味着如果我在第一次签入后进入视图并执行
dir
,则不会显示新文件,对的我这样问是因为我正在编写的触发器在修改现有文件时工作得非常好,但是当我添加新文件时,我无法从动态视图中检索它,因为它只有在签入更新的目录版本后才存在。这有意义吗?@Andrew这有意义。实际上,“添加到源代码管理”将签出父目录mkelem(创建元素)并签入父目录。但是,如果父目录已经签出,则“添加到源代码管理”将保持其签出状态。在这两种情况下,
mkelem
上的preop触发器除了用于所述
mkelem
的视图外,不会在任何其他视图中看到该元素,因为已签出父目录。我的触发器是
签入
操作的后期操作,因此我希望在第一次签入操作后看到该文件。执行“添加到源代码管理”时未签出父目录。在这种情况下,我应该在动态视图中查看签入文件吗?正在CCRC快照视图上执行
mkelem
。@Andrew否,签入元素时,签入后的postop将很快触发。但在父目录签入时也应该调用它。但是,a/不能保证添加到源代码管理实际上会签入目录,b/a
cleartool ls
仍然需要动态视图刷新其内容(您可以在触发器中尝试)。我在第一次签入后在视图中尝试了
cleartool ls
,但新文件不存在。由于触发器是为
签入操作设置的,因此它会在第一次签入后自动再次触发,但这次是针对文件夹。
cleartool ls
也不显示新文件。但是,如果我在脚本中设置了30秒的休眠,那么触发器触发新文件的第二次时间就出现了,我将其归因于ClearCase更新延迟,对吗?添加睡眠是没有意义的,因为它会惩罚执行正常签入而不是添加到源代码管理的人。