Crash 在硬崩溃后,如何修复TeamCity共享资源锁?

Crash 在硬崩溃后,如何修复TeamCity共享资源锁?,crash,locking,teamcity,shared-resource,Crash,Locking,Teamcity,Shared Resource,背景:我有一个TeamCity安装,有几十种构建配置。许多构建配置部署到相同的服务器上。为了缓解任何冲突,我使用TeamCity的共享资源功能来控制这些构建的运行方式。部署到一个特定服务器的所有构建都需要对同一共享资源使用写锁;因此,它们不会同时尝试部署到同一台服务器 上周末,由于停电,我们遭遇了严重的车祸。崩溃发生在对共享资源具有写锁定的生成运行时。现在看来写锁从未被释放。使用该共享资源的构建都无法运行——它们都只是排队。如果我禁用资源,然后重新启用它,构建将运行,但下次它将再次排队 我真的不

背景:我有一个TeamCity安装,有几十种构建配置。许多构建配置部署到相同的服务器上。为了缓解任何冲突,我使用TeamCity的共享资源功能来控制这些构建的运行方式。部署到一个特定服务器的所有构建都需要对同一共享资源使用写锁;因此,它们不会同时尝试部署到同一台服务器

上周末,由于停电,我们遭遇了严重的车祸。崩溃发生在对共享资源具有写锁定的生成运行时。现在看来写锁从未被释放。使用该共享资源的构建都无法运行——它们都只是排队。如果我禁用资源,然后重新启用它,构建将运行,但下次它将再次排队

我真的不想删除和重新创建这些共享资源;每一个都被6-9个构建配置使用,重新分配它们将是一个巨大的难题。如何清除未释放的写锁?

尼克, 共享资源锁定状态在运行时确定,不会存储在任何位置。因此,如果有一个挂起的构建需要写锁,这可能会导致所描述的行为。在这种情况下,您应该检查挂起的构建,并强制终止它们以释放锁


此外,TeamCity 8.1.2中还存在一个问题,该问题导致具有无限配额的资源在使用写锁时行为错误。如果您的行为与问题中的行为相匹配,那么解决方法(在8.1.3更新之前)是将无限资源转换为具有指定配额的资源!我们在停电前12小时升级到TeamCity 8.1.2。这就是为什么看起来像是硬碰撞导致锁卡住了;真的,只是TW-36042。当我将配额更改为有限时,构建再次开始运行。谢谢