查找并除去废弃锁以及执行锁超时操作

描述如何查找并除去废弃的记录锁以及执行锁超时操作

在悲观锁定模型中,记录锁已废弃且需要手动除去时就属于此情况。例如,锁被废弃可能是因为系统崩溃或者用户忘记完成更新而导致的。

总体锁管理策略其中一个方面是定期扫描以查找锁定的记录。可以创建查询来查找锁定的记录并确定持有每个锁的用户。对相应的记录类型创建查询来过滤 locked_by 字段以选择值不为空的记录。一般来说,在查询显示中包含 locked_by 字段非常有用,这样结果集将显示持有记录锁的用户名。 作为管理员,如果需要对要求除去锁的用户作出响应,那么该方法非常重要。该用户可能不具有除去锁的许可权,并且可能不了解谁持有锁,因此他们无法询问锁的持有者是否可以处理该记录。使用查询确定谁拥有锁定的记录并向持有锁的用户进行核实后,您可以代表用户手动除去锁(如有必要)。能否手动除去锁取决于模式制定者是否对该记录类型提供了解锁操作。

执行锁超时操作

Rational® ClearQuest® V7.1 中的悲观锁定模型仅支持手动锁超时机制。从命令行使用 Perl 脚本 findrecordlocks.pl 可查找锁定的记录,按指定的时间间隔监视锁定的记录,还可执行锁超时操作(例如,除去废弃锁)。也可将 findrecordlocks.pl 脚本用作示例来编写自己的脚本执行锁超时操作。


反馈