如何使用 python 使用 REST API 解决在 Rally 中批量创建的并发冲突



我正在尝试使用 WSAPI 在 python 中使用 WSAPI 创建>100 个项目作为 AllowedAttributeValue,而无需 pyral。输入来自输入文件。法典-

for line in inputFile:
body = {<body>}
try:
r = requests.post(url, headers=headers, data=body, proxies=proxy)

并非所有 100 行都得到更新。 数量从 40-70 不等。错误:

["Concurrency conflict: [Object has been modified since being read for update in this context] - ConcurrencyConflictException : Modified since read on update : Object Class : com.f4tech.slm.domain.WorkspaceConfiguration : ObjectID : <objid>"], "Warnings": []}}

寻找解决方案。感谢您的帮助!

我对 python 工具包不是很熟悉,但一般来说,当您在应用程序服务器之间跳来跳去并且触发请求的速度快于缓存同步发生的速度时,通常会发生这种情况。 WSAPI 写入最终在整个系统中保持一致,在处理请求的应用服务器节点上立即保持一致。由于所有创建都在修改相同的对象(它们都引用相同的属性定义(,因此您可以获得 ConcurrencyConflictExceptions。

有没有办法在python工具包中启用cookie? 这通常有效,因为负载均衡器应将您固定到特定节点。 它也应该更快,因为它也不必在每个请求上执行身份验证往返。

最新更新