Azure Cosmos DB更改提要重试特定文档

时间:2018-11-16 17:58:23

标签: azure azure-cosmosdb azure-cosmosdb-sqlapi

我们正在使用Cosmos DB变更供稿来解决我们的一些要求。想了解变更Feed中是否有任何重试机制。例如,如果我得到一批10个文档,但由于某种原因无法处理第三个文档,我可以只重播第三个消息吗?

有三种使用变更供稿的方式:

  1. Azure函数-对此没有看到蚂蚁重试机制。

  2. 更改供稿处理器库-如果处理一批文档时有任何异常,将再次重播所有文档。

  3. Azure Cosmos DB SQL API SDK-尚未详细探讨。但是我们对检查点拥有完全的控制权,因此我们可以从失败的消息开始重播。

我还没有找到一个选项可以仅重试一批邮件中失败的邮件。

1 个答案:

答案 0 :(得分:1)

目前尚无此类机制,但是很好。 可能帮助的一种方法是使用手动检查点(ChangeFeedProcessorSettings中的CheckpointFrequency,ChangeFeedObserverContext.CheckpointAsync())。但是请注意,即使使用手动检查点,原子单位仍然是一批。