我重新运行了一些测试代码,这些代码将数百项插入到我的寄存器中。这段代码几个月前就开始工作了。现在我收到一个409 -“冲突/另一个更新可能正在进行中,请重试。”
当发出项目删除的批量请求或项目发布的批量请求时,可能会发生该错误。当每个delete或post都作为单独的请求发出时,不会发生这种情况。
我的进程在单个线程下同步运行,所以我在任何时候都不会向Square发出超过一个请求。
我猜这是一个bug,它是作为代码更改的一部分引入的,用于检查并发更新,但是哪些代码没有经过适当的测试(同样,只是猜测)。
发布于 2014-09-11 05:05:28
感谢您指出此未记录的错误类型。当您同时提交大量请求时,可能会收到来自与项相关的端点的409错误(与submit Batch端点一样)。要减少出现此错误的可能性,您可以减少每个单独批次中包含的请求数量(例如从30个减少到15个),或者单独发送每个请求。
即使在减小批处理的大小之后,仍有可能发生409错误。您的应用程序应该准备好遇到此错误,并重试任何受影响的请求。
如果问题仍然存在,请对此问题添加评论,我们将进一步调查。
https://stackoverflow.com/questions/25748809
复制相似问题