表存储批处理表结果

时间:2014-02-27 00:31:58

标签: azure azure-table-storage

Azure Table Storage提供BatchOperation方法。它返回一个TableResults列表。从我所看到的情况来看,这个返回值永远不会有混合失败和成功(如批量应该)。我无法找到说这是事实的文档。如果有人有这个特定信息的便捷链接,请告诉我。

1 个答案:

答案 0 :(得分:1)

TableBatch操作是原子操作,因此在第一次失败后没有必要继续执行批处理操作。 TableBatchOperation有2个结果,要么所有操作都成功,要么整个请求成功,要么在第一个失败的操作时返回请求,并回滚先前操作所做的更改。

这里有趣的是,如果批处理中的某个操作出现故障,并且失败操作的索引嵌入在StorageException对象中,您将获得StorageException。然后,如果您愿意,可以实现逻辑以从批处理(和日志)中自动删除该操作,然后重新提交TableBatchOperation。

我已经实现了一个StorageException扩展类,它从StorageException对象中提取失败的操作索引和许多其他有用信息。

随意使用它: https://www.nuget.org/packages/AzureStorageExceptionParser/